モバイル Web サイトのナビゲーション ツールとしてネストされたリストがあります。最後の li の a.close-link は、jquery を使用してリスト #menu を閉じる/非表示にする必要があります。
<ul id="navi">
<li><a href="#">Mobile Navigation</a>
<ul id="menu">
<li><a href="#">Page 1</a></li>
<li><a href="#">Page 2</a></li>
<li><a href="#">Page 3</a></li>
<li><a href="#">Page 4</a></li>
<li><a href="#" class="close">Close parent list</a></li>
</ul>
</li>
</ul>
これまでのところ、私の作業中のjqueryソリューションは次のとおりです。
$(document).ready(function() {
$("li a.close").click(function() {
$(this).parent().hide();
return false;
});
});
問題: リストが「非表示」の状態のままです。これは、ネストされたナビゲーション リスト #menu を再び開くことができないことを意味します。jquery の行を追加してデフォルトの状態に戻すにはどうすればよいですか?
助けてくれてありがとう!
ご協力ありがとうございました!あなたは正しい解決策を導き出しました:
<ul id="navi">
<li><a class="openul" href="#">Mobile Navigation</a>
<ul id="menu">
<li><a href="#">Page 1</a></li>
<li><a href="#">Page 2</a></li>
<li><a href="#">Page 3</a></li>
<li><a href="#">Page 4</a></li>
<li><a href="#" class="close">Close parent list</a></li>
</ul>
</li>
</ul>
そしてjqueryコード:
$(document).ready(function() {
$("li a.close").click(function() {
$("#menu").children().hide();
return false;
});
$(".openul").mouseover(function() {
$("#menu").children().show();
});
});
マウスオーバー時にナビゲーション リストが開いたままになるため、モバイル ブラウザーで非常に便利です。