jquery mousemove()は、マウスがまだある場合でも呼び出されます
-
14-10-2019 - |
質問
私にとって、私がこの例を試してみると: http://jsfiddle.net/by3cc/3/ マウスをドキュメントの上に移動しても、「マウス移動」テキストが表示されます。
なんで? ;
また、メッセージはChromeにのみ表示されるようです。
奇妙な:-s
解決
グローバル event
オブジェクトは非標準であるため、IE(おそらくQuirksモードでのみ)のように、一部のブラウザにのみ存在し、Chromeに表示されます。
イベントオブジェクトをイベントハンドラーのパラメーターとして受け入れます。
var last_moved=0;
$(document).mousemove(function(e){
var now = e.timeStamp;
if (now - last_moved > 1000) {
$('#messages').append('mouse moved<br/>');
last_moved = now;
}
});
他のヒント
X、Yの座標を保存します
$(document).mousemove((function(){
var x,y;
return function(evt){
if(evt.clientX == x && evt.clientY == y){
return;
}
x = evt.clientX;
y = evt.clientY;
$('#messages').append('mouse moved<br/>');
};
})());
所属していません StackOverflow