2011-11-15 60 views
0

我正在建立一个网站,并在本网站上我的鼠标滚轮上有一个事件。问题是,当你在鼠标上滚动你的鼠标(用一个神奇的鼠标)时,滚动事件会被调用很多次,以至于一次滚动功能会完全失去知觉并且不再流畅。检查滚动是否被触发

有谁知道你如何解决这个问题? 我已经尝试检查e.orginalEvent,但它总是返回DOMMouseWheel。 同样在PC上,您不会遇到这个问题,并且使用其他鼠标,那么它的魔术鼠标效果非常好。

感谢

回答

2

听起来像是你在这里http://benalman.com/projects/jquery-throttle-debounce-plugin/需要去抖/油门插件。

它可以让你设置事件,只有在一段时间如1秒后才能触发。这样你的页面就不会被鼠标滚轮事件淹没,或者如果有人认为单击百万次表单的提交按钮将使其提交更快......

+0

+1给最快的枪! –

1

尝试使用类似underscore.jsthrottle函数。

从文档:

返回功能的节流版本,即,反复调用时,才会真正调用包装的函数每每等待的毫秒最多一次。对速度限制事件有用,速度限制事件的发生速度比您可以跟上的要快。