4

イベントがトリガーされたときにスタイルを適用しようとしていますmouseenterが、次の未処理のセレクターのコメントを外すと、ドキュメントの準備ができていても機能しなくなります。

<body>
<div id="1" class="button untouched"></div>
<script src="/jquery.js"></script>
<script>
$(document).ready(function(){
    alert("JQuery is working");
});

/*
$(".untouched").mouseenter($function(){
    $(this).addClass("touched");
});
*/
</script>
</body>

次の場所にある例に従っています。

http://api.jquery.com/mouseenter/

そして、 Firebug で次のエラーが発生します

missing ) after argument list
[Break On This Error]   

$(".untouched").mouseenter($function(){

うまくいかないので、間違えましたが、何がわかりません。私が知っているのは、それを実行すると、私のコードはどれも機能しないということだけです。私は jQuery の最新バージョン 1.7.2 をダウンロードalert()しました。他のバージョンはコメントアウトされているため、このページで利用できることがわかっています。

4

4 に答える 4

4

関数の前に $ は必要ありません。また、mouseenter イベント関数コードは、ドキュメントの準備が整っている必要があります。

<script>
     $(document).ready(function(){
         alert("JQuery is working");

         $(".untouched").mouseenter(function(){
             $(this).addClass("touched");
         });
     });
</script>
于 2012-06-08T01:39:57.950 に答える
2

スクリプトでは、その$(".untouched")部分はready関数内にある必要があります。また、

mouseenter($function(){$ 記号が正しくありません。

最終的なスクリプトは次のようになります。

$(document).ready(function(){
    alert("JQuery is working");

    $(".untouched").mouseenter(function(){
        $(this).addClass("touched");
    });
});
于 2012-06-08T01:39:09.087 に答える
2

$という単語の前に余分なものがありますfunction。おそらく、untouchedクラスも削除する必要があります。

$(".untouched").mouseenter(function(){
    $(this).removeClass("untouched").addClass("touched");
});
于 2012-06-08T01:40:40.210 に答える
1

これはcssから簡単に実行できます

    .untouched 
       {
       background: green;
      }

    .untouched :hover
      {
       background: blue
       }

JQuery で .mouseover を使用する場合は、関数が必要です。1 つはマウスを上に置いたとき用、もう 1 つはマウスが上にないとき用です。これは css の方が簡単です。 :hover フィルターだけがあります

       $('.untouched').mouseover(function() {
               $(this).addClass('touched');
                     });
       $('.untuoched').mouseout(function() {
              $(this).removeClass('touched');
                      });
于 2012-06-08T01:49:19.770 に答える