1

jquery 1.5 を使用していますが、クラス関数の追加と削除に問題があります。以下は私のコードです。

通常、ホバー、およびアクティブな状態のナビゲーションを作成しています。クラスを追加および削除するアクティブな状態。

  $(".class").hover(function(){
          $(this).css("background-color", "#666).css("color", "yellow");
    ), function(){ 
         $(this).css("background-img", url(image).css("color","#fff");
    ).live('click', function(){
           if($("ul.me li").hasClass("current")){
             $("ul.me li").removeClass("current");
                $(this).addClass("current");
             }
        });


<ul class="me">
   <li class="current"> item1 </li>
   <li> item1 </li>
   <li> item1 </li>
</ul>

これを正しくバインドしましたか?

4

4 に答える 4

0

スクリプトの内容を複雑にしすぎています。.css のドキュメントを読む必要があります。で要素を参照することはできません$(".class")。要素タイプを参照したい場合は、.or #likeを付けずに名前だけを使用してください$("ul")。クラスを参照したい場合は、ID$(".me")に andを使用します。$("#idName")単一の css コマンドは、変更する css 値の配列を取ることができます。前に述べたように、CSS のドキュメントを参照してください。jQuery 1.6 は、私が jsfiddle で取得できる限り近いものでした。ここにフィドルリンクがあります。スクリプトを参照して、要件に合わせて css 値を変更してください。

フィドル

注: クラスを li に追加し、ホバーで削除する場合は、js ではなく css でクラスにスタイルを追加してください。もっと安い。

于 2013-02-13T15:57:41.913 に答える
0

$("ul.me li").removeClass("current")おそらく代わりに使用する必要があります$("ul#me li").removeClass("current")

$("selector").live('click', function(){
   if($("ul.me li").hasClass("current")){
     $("ul.me li").removeClass("current");
        $(this).addClass("current");
     }
});
于 2013-02-13T12:52:30.840 に答える