私は修正したスクリプトで少し助けが必要です。mouseoverのmouseleaveでアクティブなクラスを追加/削除します
私はサブメニューを作成しましたが、ここではホバリング中に.active_2クラスを削除したいと考えています。マウスクラスを削除すると.active_2を追加する必要があります。
$(function() {
var $menu = $('#sub_nav');
$menu.children('li').each(function(){
var $this = $(this);
var $span = $this.children('span');
$span.data('width',$span.width());
$this.bind('mouseenter',function(){
$menu.find('.sub_nav_sub').stop(true,true).hide();
$menu.find('.active_2').removeClass();
$span.stop().animate({'width':'170px'},300,function(){
$this.find('.sub_nav_sub').slideDown(300);
});
}).bind('mouseleave',function(){
$this.find('.sub_nav_sub').stop(true,true).hide();
/* addClass here */
$span.stop().animate({'width':$span.data('width')+'px'},300);
});
});
});
CSS:
.active_2, .active_2 a {
background: #FBD009;
color: #000000!important;
}
HTML:
<ul id="sub_nav" class="sub_nav">
<li class="active_2"><a href="aktuelles.html">News</a></li>
<li><span>Termine</span>
<ul class="sub_nav_sub">
test
</ul>
</li>
</ul>
クラスを削除すると、うまく動作しますが、追加クラスが動作していない
これは、これまでのところ、私のコードです。 私が試した:
$(this).addClass('.active_2');
編集: を私はここで再び、私の問題の正しい処方をしなかった:
私が前にアクティブだった李覚えていて、それを設定したいですliマウスがナビゲーションバーを離れるとき。
たとえば、ニュースが有効です。ホバリングニュースの間、それはもはやアクティブではありませんが、他のすべてのものはスライドしています。ナビゲーションバーからマウスを削除すると、ニュースが再度アクティブになるはずです。
私はクラスactive_2を持つリチウムを検索すべきであると考え、その後、addClassは
$(this).find('li.active_2').addClass('active_2');
をactive_2しかし、これは正しい選択ではないように思われます。助言がありますか?
は、それが働いたありがとう:)しかし、それdoesntの李を覚えている。今私は前に移動した李にクラスを追加します。しかし、私はクラスを一度追加したわけではありません。なにか提案を? – JPM
@ JPM、これはすでに正しく答えられました。元の質問の意味を、すべての正解が無効になるまで変更しないでください。 – Sparky
私の間違いを犯してください。以前私の間違った質問を認識していませんでした。 – JPM