Hammerjs 2.0.2滑动检测无法正常工作

时间:2014-08-17 06:06:26

标签: javascript hammer.js

我刚刚开始在我最近的项目中使用hammerjs并使用latest version

这是我如何检测swipeLeft事件:

var block = document.getElementById('om_hammer');
var hammertime = new Hammer( block );
hammertime.get('swipe').set({ direction: Hammer.DIRECTION_ALL });
hammertime.on('swipeleft', function(e){
    console.log('in');
});

但没有任何反应。我尝试使用console.log(hammertime);检查对象是否已正确初始化,并显示应用的事件和元素。

我正在使用chrome(模拟器)调试它,但没有错误消息。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我进行了更多的研究并得到了解决方案,甚至还不知道它是否是正确的方法。

    var block = document.getElementById('om_hammer');
    var move, start, end;
    var hammertime = new Hammer( document.body );
    hammertime.add(new Hammer.Swipe({ direction: Hammer.DIRECTION_HORIZONTAL }));
    hammertime.add(new Hammer.Pan({ direction: Hammer.DIRECTION_HORIZONTAL }));

    hammertime.on('panstart', function(e){
        move = e.direction;
        start = e.distance;
    });
    hammertime.on('panend', function(e){
        move = e.direction;
        end = e.distance;
        var totalDistance = end - start;

        hammerInit(move, end);
    });

我检测到摇摄动作并做了我想要的工作人员。尚未使用chorme模拟器控制台在移动设备上进行测试。