2012-05-02 77 views
11

我试图查看一个li的子div是否可见,如果是这样的话,将一个类应用于li。这是我得到的,但它不起作用。jQuery - 检查子div是否可见

if(jQuery('#menu li').children('div').css('display') != 'none') { 
    jQuery('li', this).addClass('dropHover'); 
} 
+0

你能告诉我们DOM结构吗?而完整的代码可以提供帮助,因为这可能是错误的。它指的是什么? – gdoron

回答

28
if (jQuery('#menu li > div').is(':visible')){ 
    //... 
    jQuery('li', this).addClass('dropHover'); 
} 

我不知道什么是DOM结构或什么this指,但是这可能做的伎俩还有:

jQuery('#menu li:has(div:visible)').addClass('dropHover'); 

它添加了类“dropHover “到具有可见的所有<li>元素<div>
并且它们需要是具有菜单ID的元素的子元素。