【发布时间】:2016-06-08 01:26:34
【问题描述】:
默认情况下,如果用户使用鼠标滚轮向下滚动页面,它不会触发任何悬停事件。有没有办法改变这一点,只要指针悬停在 div 上,无论用户是使用鼠标还是鼠标滚轮将其移动到那里,它都会触发悬停事件?
$(window).load(function() {
$(document).bind('mousewheel', function(e) {
console.log(e.pageX);
console.log(e.pageY);
var e1 = $.Event('mouseenter');
e1.pageX = e.pageX + 1;
e1.pageY = e.pageY;
$('img').trigger(e1);
var e2 = $.Event('mousemove');
e2.pageX = e.pageX + 1;
e2.pageY = e.pageY;
$('img').trigger(e2);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
编辑:上面的代码触发了一个悬停事件,但它并没有特别选择任何图像,它只是在每次鼠标移动时触发悬停事件。
【问题讨论】:
-
您是否尝试在滚动停止后触发
mousemove事件? -
我不确定触发 mousemove 事件是什么意思。甚至可以用javascript移动鼠标吗?
-
是的,可以模拟 mousemove 事件。
-
我想我已经很接近了,看看我最后的编辑,如果你能帮忙,请告诉我!
标签: javascript jquery mouseevent mousewheel