2012-05-02 14 views
11

मैं यह देखने की कोशिश कर रहा हूं कि ली का बच्चा div दिखाई दे रहा है और यदि ऐसा है तो ली को कक्षा लागू करें। यह मुझे मिला है लेकिन यह काम नहीं कर रहा है।jQuery - जांचें कि क्या बच्चा div दिखाई दे रहा है

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

क्या आप हमें डीओएम संरचना दिखा सकते हैं? और पूरा कोड मदद कर सकता है, क्योंकि यह 'गलत' गलत हो सकता है। इसका क्या मतलब है? – gdoron

उत्तर

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

मैं डोम संरचना है या क्या this को संदर्भित करता है के लिए क्या पता नहीं है, लेकिन इस चाल के रूप में अच्छी तरह से कर सकते हैं:

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

यह वर्ग "dropHover कहते हैं "सभी <li> तत्वों के लिए जिनके पास <div>
है और उन्हें मेनू आईडी के साथ तत्व के बच्चे होने की आवश्यकता है।

संबंधित मुद्दे