2012-05-02 28 views
11

Tôi đang cố gắng xem liệu div con của một li có hiển thị hay không và nếu áp dụng một lớp cho li. Đây là những gì tôi nhận được nhưng nó không hoạt động.jQuery - Kiểm tra xem div con có hiển thị hay không

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

Bạn có thể cho chúng tôi biết cấu trúc DOM không? và mã đầy đủ có thể giúp, bởi vì 'điều này' có thể sai. Nó đã tham khảo những gì? – gdoron

Trả lời

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

Tôi không biết cấu trúc DOM là gì hay những gì this đề cập đến, nhưng điều này có thể làm các trick cũng như:

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

Nó thêm lớp "dropHover "cho tất cả các thành phần <li> có thể nhìn thấy <div>
và chúng cần phải là con của một phần tử có id trình đơn.

Các vấn đề liên quan