jQuery 1.8.3 で動作する関数がありますが、1.9.1 にアップグレードすると動作しなくなりますが、ドキュメントに変更はありません。誰かがこれを修正する方法を知っていますか?
$(document).on("hover", "#cart-left", function(){
$("#cart").addClass('active');
});
http://jsfiddle.net/michalcerny/R9HZp/
ご支援ありがとうございます!
jQuery 1.8.3 で動作する関数がありますが、1.9.1 にアップグレードすると動作しなくなりますが、ドキュメントに変更はありません。誰かがこれを修正する方法を知っていますか?
$(document).on("hover", "#cart-left", function(){
$("#cart").addClass('active');
});
http://jsfiddle.net/michalcerny/R9HZp/
ご支援ありがとうございます!
hover
速記の状態
jQuery 1.8 以降、hover
短縮形は非推奨になりました。jQueryのon()
ドキュメントを参照してください。
jQuery 1.8 で非推奨: 「hover」という名前は、文字列「mouseenter mouseleave」の短縮形として使用されます。
jQuery 1.9 の時点で、hover
省略形はサポートされていません。jQuery 1.9 アップグレード ガイドを参照してください。
別
あなたの場合、それはmouseenter
イベントを使用する必要があることを意味します。例えば:
$(document).on("mouseenter", "#cart-left", function(){
$("#cart").addClass('active');
});
jsFiddle のデモを見る
のより良い使い方on()
on()
渡されたセレクターがDOM に動的に (つまり、ページの読み込み後に) 追加される要素を参照しない限り、ハンドラーをに委譲する必要がないことにも注意してくださいdocument
。代わりに、この場合、次のようにハンドラー関数を要素に直接バインドできます。
$("#cart-left").on("mouseenter", function(){
$("#cart").addClass('active');
});
問題は「on」関数ではなく、1.9.1で非推奨(および削除)された「ホバー」疑似イベントにあります:http://jquery.com/upgrade-guide/1.9/#hover-疑似イベント