1

私はjQueryが初めてです。アコーディオンの垂直メニュー バーを作成する jQuery コードがあります。メニュー バーのデフォルトの動作は、すべての子要素を非表示にすることです。それを達成するためのコードは次のとおりです

var menu_ul = $('.menu > li > ul');
menu_ul.hide();

ユーザーが最上位メニューをクリックして子オプションを公開したら、メニューの状態を保存したいと思います。特定のクラスを最上位の u​​l アイテムに追加して、他のクラスと区別することができます。

これを機能させるには、上記の jQuery コードを変更して、特定のクラスを除くすべての ul 項目を非表示にする必要があります。言い換えると

class="show_item" 以外のすべての ul 要素を非表示にします

助けてください!!!

4

1 に答える 1

2

class を持たないすべての順序付けられていないリストを非表示にする場合は、セレクターshow_itemを使用してこれを実現できます。:not

$("ul:not(.show_item)").hide();

読みやすさを向上させるために、jQuery のドキュメントでは、.not()フィルタリング方法を検討することをお勧めします。

$("ul").not(".show_item").hide();

ポアシンを選択してください - どちらでも問題なく動作します。

于 2012-04-27T04:19:19.460 に答える