2016-12-20 20 views
2

動的に作成されたコンテンツの場合、イベントを処理するために 'on'メソッドを使用しています。クリックではうまく動作しますが、ホバーではうまく動作しません。ここでjQuery hoverイベントハンドラが動的コンテンツを操作していないときにクリック

はコードです:

$(document).on('click', 'li', function(){ 
    alert('a'); 
}); 

作品が、

$(document).on('hover', 'li', function(){ 
    alert('a'); 
}); 

はしていません。

コードが間違っていますか?それとも私のセットアップで何かの問題が発生します。 1.9のよう

+1

ホバーが本当のjsではありません使用する必要がありますイベント、そのjquery関数です。それはなぜ機能しないのですか? –

+1

delgatesは、ホバーイベント使用マウス入力、マウス離脱イベントをサポートしていません。 '$(document).on(mouseenter:function(){}、mouseleave:function {}、 'li');' – Nadeem

答えて

4

"hover" pseudo-event

、イベント名の文字列 "ホバー" は、もはやあなたがmouseentermouseleaveイベント

を使用する必要がある "のMouseEnter mouseleave"

の同義語としてサポートされていません

$(document).on('mouseenter', 'li', function(){ 
    alert('a'); 
}); 
$(document).on('mouseleave', 'li', function(){ 
    alert('a'); 
}); 

代替構文を使用することもできます

$(document).on({ 
    mouseenter: function() {   
    }, 
    mouseleave: function() {   
    }}, "li"); 
+0

ありがとう。ホバリングが使用できないことを知らなかった。 –

2

.hover()メソッドで "ホバー" 疑似イベント名を混同しないでください

あなたはmouseenter

$(document).on('mouseenter', 'li', function(){ 
 
    alert('a'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
 
<ul> 
 
    <li>sdada</li> 
 
    </ul>

関連する問題