1

私のjqueryコード

   $("a").on("hover",function(){$(this).css("background","#ccc");},function(){$(this).css("background","#fff")});

しかし、いつでも機能しています

$("a").hover(function(){$(this).css("background","#ccc");},function(){$(this).css("background","#fff")});

ホバーで動作させる方法

4

3 に答える 3

1

ホバーは、イベントのショートカットmouseenterですmouseleave。だからあなたは好きなものを使ってそれらをバインドすることができます

$("a").on({ 
           mouseenter: function(){$(this).css("background","#ccc");},
           mouseleave: function(){$(this).css("background","#fff");}
         });
于 2012-06-20T06:49:35.503 に答える
1

.on()ホバーの場合は次のようになります

$("a").on('hover', function(e) {
  if(e.type =='mouseenter') {
   // code for mouseenter
  } else {
   // code for mouseleave
  }
});

しかし、 forは2.hover()つの関数を受け入れます。mouseentermouseleave

$('a').hover(
  // for mouseenter
  function() {

  },
  // for mouseleave
  function() {

  }
);

したがって、使用したい場合.on()、コードは次のようになります。

$("a").on('hover', function(e) {
  if(e.type =='mouseenter') {
     // code for mouseenter
     $(this).css("background","#ccc");
  } else {
     // code for mouseleave
     $(this).css("background","#fff")
  }
});

@ThiefMaster のコメントとしてmouseenter、個別にバインドしたい場合はmouseleave、次を試すことができます。

$('a')
     .mouseenter(function() {
        $(this).css('background', '#ccc');
      })
     .mouseleave(function() {
         $(this).css('background', '#fff');
      });

または.on()あなたができることを使用して

$('a').on({
  mouseenter: function() {
     $(this).css('background', '#ccc');
  },
  mouseleave: function() {
     $(this).css('background', '#fff');
  }
});
于 2012-06-20T06:48:13.873 に答える
1

ライブデモはこちら

そしてコード

$("a").on('hover', function(e) {
  if(e.type =='mouseenter') {
      // do something when mouse enter
      alert("mouse enter");
  } else {
      // do something when mouse leave
      alert("mouse leave");
  }
});​
于 2012-06-20T06:55:16.910 に答える