我在 HammerJS 中使用拖动事件来更改输入范围的值。
如果我在每个拖动事件上更改输入范围的值,HammerJS 会持续快速触发它,以至于某些移动设备崩溃。
如何限制拖动事件中的函数调用率?
最佳答案
我认为您不能更改调用事件的速率,因为当屏幕上的某些内容发生变化时(例如,手指从一个位置滑动到另一个位置),事件就会触发。但您或许可以尝试限制事件的处理。
像这样的东西可以完成这项工作:
var lastDeltaX, lastDeltaY = 0;
hammer.on("pan", function(event) {
if((lastDetaX - event.deltaX) < 5 ||
(lastDetaY - event.deltaY) < 5)
{
//Do something
lastDeltaX = event.deltaX;
lastDeltaY = event.deltaY;
}
});
关于javascript - HammerJS - 限制拖动事件中的函数调用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32538093/