11

liの子divが表示されているかどうかを確認しようとしています。表示されている場合は、クラスをliに適用します。これは私が得たものですが、機能していません。

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

1 に答える 1

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 を持つ要素の子である必要があります。

于 2012-05-02T00:14:40.370 に答える