2

完成滚动后,我想用 jQuery mousemove 函数触发一个事件。

问题是通过滚动鼠标移动被触发(http://docs.jquery.com/Tutorials:Mouse_Position#Tracking_mouse_position),

我只想在滚动结束并且将鼠标移动为“真实”时触发事件。

我正在使用一个非常简洁的解决方案来查看滚动何时停止,因此我希望在那之后完成鼠标移动检查。 jQuery scroll() 检测用户何时停止滚动

我的想法是读取X坐标并在滚动后仅在Y坐标发生变化时触发事件,但我真的更希望我可以使用delay()setTimeout()之类的东西,但这些都不起作用组合...

4

1 回答 1

1

一种方法(可能不是最好的方法)是在滚动/停止时绑定/取消绑定 mousemove。检查坐标是一个很好的方法。在滚动结束时触发自定义事件,然后检查鼠标的坐标以查看何时应该触发所需的 mousemove

也许你可以一直绑定mousemove但设置一个标志,所以当你滚动时,将标志设置为false,这样mousemove就不会触发并在滚动停止时将其设置为true,并手动触发mousemove。这可能比始终绑定/取消绑定事件更好。试试这个,看看它是否有效

于 2013-03-11T14:22:06.093 回答