メニューに行間に非表示のメニューを表示させようとしています。純粋な CSS メニューは必要ありません。これはより少ないマークアップで実行できることを認識してください。また、ロットが不足しています。これはただ切り貼りして作り直しただけです。
html は次のとおりです。
<nav>
<div class="navigation_toplevel">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_toplevel has_sub">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_bottomlevel">
<ul>
<li>Preferences</li>
<li>Preferences</li>
<li>Preferences</li>
</ul>
</div>
<div class="navigation_toplevel has_sub">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_bottomlevel">
<ul>
<li>Preferences</li>
<li>Preferences</li>
<li>Preferences</li>
</ul>
</div>
<div class="navigation_toplevel has_sub">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_bottomlevel">
<ul>
<li>Preferences</li>
<li>Preferences</li>
<li>Preferences</li>
</ul>
</div>
<div class="navigation_toplevel has_sub">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_bottomlevel">
<ul>
<li>Preferences</li>
<li>Preferences</li>
<li>Preferences</li>
</ul>
</div>
<div class="navigation_toplevel has_sub">
<a href="Index"><h4>Home</h4></a>
</div>
<div class="navigation_bottomlevel">
<ul>
<li>Preferences</li>
<li>Preferences</li>
<li>Preferences</li>
</ul>
</div>
</nav>
このメニューは完全に流動的である必要があり (windows が小さい場合、行ごとに 1、2、または 3 リンクである可能性があります)、サブメニューを下に水平に表示し、nav コンテナーを埋める必要があるため、このように設定しました。
私のJquery:
<script>
$(document).ready(function () {
if ($(".navigation_toplevel").hasClass("has_sub")) {
$(this).hover(function () {
$(".navigation_toplevel").nextAll("div:first").toggleClass("show_sub");
});
}
else { }
});
</script>
ここで何が間違っていますか?