javascript - HammerJS - 限制拖动事件中的函数调用率

标签 javascript hammer.js

我在 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/

相关文章:

javascript - 导航菜单不会在 Codepen 外滚动时缩小

javascript - 将 css 变换转换为缩放和位置

javascript - 似乎无法将选项传递给 Hammer.js Jquery

javascript - 在移动设备上使用 hammer.js 拖动元素失败

unit-testing - 使用 angular2 测试 hammerjs 事件

angular - 在 Angular 中为不同的模块配置 hammer.js 手势

Javascript——使用数字作为整数可靠吗?

javascript - 比较字符串和数组的快速方法

javascript - JS String构造函数原理

Javascript 将参数传递给 on ('play' ) eventHandler