サブメニューがある水平メニューもあり、サブメニューがある場合は、親メニューのホバー効果で背景色を変更したいだけです。
この例のようにhttp://jsfiddle.net/YA2Yz/11/
上記の例では、目的の効果を得るためにハードコーディングしhas-submenu
ていますが、問題は、実際のメニューがデータベースから動的に生成されることです。これまでのところhas-submenu
、コード自体からクラスを割り当てて機能させる方法を見つけることができませんでした。
私が探している解決策は、jqueryを使用して、サブメニューを持つ要素のみに新しいCSSクラスを追加することです。
この要素を見つける方法がわかりません
<li><span class="dir"><a href="#">CATEGORIES</a></span><span id="menus-spacer">|</span>
jQueryを使用してクラスを変更dir
しますhas-submenu
<li><span class="has-submenu"><a href="#">CATEGORIES</a></span><span id="menus-spacer">|</span>
このjsFiddleリンクには、上記のリンク例に示すように、目的の結果を得るために変更したい実際のコードがあります。
HTML コード:
<div id="nav-wrapper">
<ul class="dropdown dropdown-linear" id="nav">
<li class="active"><span class="dir"><a href="#">HOME</a></span><span id="menus-spacer">|</span></li>
<li><span class="dir"><a href="#">ABOUT US</a></span><span id="menus-spacer">|</span></li>
<li><span class="dir"><a href="#">ARTICLES</a></span><span id="menus-spacer">|</span></li>
<li><span class="dir"><a href="#">CATEGORIES</a></span><span id="menus-spacer">|</span>
<ul>
<li><a href="#">Politics</a><span id="menus-spacer">|</span></li>
<li><a href="#">Feature</a><span id="menus-spacer">|</span></li>
<li><a href="#">Economy</a><span id="menus-spacer">|</span></li>
<li><a href="#">Feature</a><span id="menus-spacer">|</span></li>
<li><a href="#">Business</a><span id="menus-spacer">|</span></li>
</ul>
</li>
<li><span class="dir"><a href="#">ARCHIVE</a></span><span id="menus-spacer">|</span>
<ul>
<li><a href="#">2013</a><span id="menus-spacer">|</span></li>
<li><a href="#">2012</a><span id="menus-spacer">|</span></li>
<li><a href="#">2011</a><span id="menus-spacer">|</span></li>
<li><a href="#">2010</a><span id="menus-spacer">|</span></li>
<li><a href="#">2009</a><span id="menus-spacer">|</span></li>
</ul>
</li>
<li><span class="dir"><a href="#">NEWS</a></span><span id="menus-spacer">|</span></li>
</ul>
</div>