0

on() メソッドは、jQuery 1.4.x ではサポートされていません。互換性があるようにこれを修正する方法を誰かに教えてもらえますか?

$(document).on({
  mouseenter: MyObj.mouseenter,
  mouseleave: MyObj.mouseleave
}, '.class');
4

3 に答える 3

3

デリゲート メソッドを使用します。

$(document).delegate('.class',{
  mouseenter: MyObj.mouseenter,
  mouseleave: MyObj.mouseleave
});

注: jQuery 1.4.3+ が必要

于 2013-04-12T17:57:54.537 に答える
2

古いバージョンの jQuery と互換性を持たせるには、live代わりにを使用する必要があります。ページがロードされた後に作成される要素に対して常に機能します。onlive

jQuery 1.7 では live() メソッドが廃止され、1.9 では削除されました。に置き換えられましたon

ただし、可能であれば、jQuery をアップグレードする方が賢明です。

bindこれは と同じ機能を提供しないため、使用しないでくださいlive

于 2013-04-12T17:54:48.767 に答える
0

次のように、さまざまなリスナーを jQuery オブジェクトに直接適用できます。

$(".class").mouseover(function() {

}).mouseout(function() {

});

...またはこれ:

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

}).mouseleave(function() {

});

ここで利用可能な例: http://api.jquery.com/mouseenter/

于 2013-04-12T17:58:05.723 に答える