我在查找/弄清楚使用 hammer.js 时如何向 jQuery plugin 添加选项时遇到问题。这就是我启动锤子的方式:

            /* Create Hammer object for swipable game cards */
            $('.game-card-mobile')
            .hammer()
            .bind('swiperight swipeleft press', function(ev) {
              console.log(ev.type);
            });

我发现为了执行滑动操作,需要发生相对快速的滑动,我想降低触发事件所需的滑动速度。阅读完文档后:http://hammerjs.github.io/recognizer-swipe/ 似乎有一个速度选项默认为 0.65,所以我认为可以以某种方式将其更改为 0.5,以便在较慢的滑动时触发事件?

编辑: 如果这有任何帮助,这里有一些用 javascript 编写的刷卡测试示例:https://github.com/hammerjs/hammer.js/blob/master/tests/unit/gestures/test_swipe.js 这显示了如何设置 {threshold: 1} 的示例,我正在尝试在使用 jQuery 插件时实现这一目标。

最佳答案

您发布的链接来自名为 Hammer.js 的库。您必须在项目中导入此库才能使其工作。

识别前所需的最小速度,单位是 px 每毫秒 正如他们所说的那样,然后它是每毫秒 0.65px,然后将其设为 0.50 应该使事件以较小的触摸速度发生。

0.50 -> 会在之前触发

0.80 -> 更难开火

var hammertime = new Hammer(myElement, myOptions);
hammertime.on('swipe', function(ev) {
    alert(ev);
});

hammertime.get('swipe').set({ velocity: 0.80});

也许是正确的方法?

嘿它对你有帮助。

编辑: 正如 jquery api 页面中所说:Hammer 实例存储在 $element.data("hammer") 中。

那么也许
$("#yourdivtoswipe_id").data('hammer').get('swipe').set({ velocity: 0.80});

问候

关于javascript - 如何使用hammer.js jQuery插件设置不同的速度来识别滑动?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29626028/

10-10 23:13