jQuery:mouseenter / mousemove / mouseover无法通过小div和快速鼠标移动识别

我有一个宽度为div的div :5pxheight:400px (例如)。 如果我想在这个divhover时触发一个函数,当我将鼠标移动得太快时就无法识别事件(如果我使用mouseover / mouseenter / mousemove则无关紧要)。

你可以在这里看到一个有效的例子: http : //jsfiddle.net/2YZvk/

这是我的function:

jQuery(document).ready(function(){ jQuery('.hover_test').bind('mouseenter',function(){ jQuery(this).css('background-color','#30a900'); }); }); 

即使我移动鼠标太快,是否有可能以某种方式触发此事件? 使div更宽不是一个选择……

这只是“ 浏览器的工作原理 ”; 它不会为你触摸的每个像素触发事件,而是每x个毫秒。 它会检查指针前一个位置的位置是否不同,然后会触发事件。 这是通过操作系统处理的。

将鼠标快速移动到这个更改过的JSFiddle版本上 。 并非所有条形图都会直接着色:仅在浏览器中定义的x毫秒数之后。

当您将鼠标移动到快速时,速度为(例如)5,而5 + 5 + 5 + 5 = 20,因此您可以触摸的步数为5,10,15,20,但如果div为7 ,14,18它不会发生,它只是它的工作方式