0

我在滑动菜单/导航器的页面元素中有一个 DIV。我正在尝试在此元素上捕获 Hammer 事件,但只能访问“触摸”事件。

var hammer = Hammer(getElementById('myDiv'));
hammer.on('touch swipe', function(e){
   console.log(e); 
});

是否有我遗漏的东西,或者 Onsen UI 是否使用 Hammer 设置了干扰的特定内容?

4

1 回答 1

1

您是否取消了默认触摸事件?它对我有用。

var element = document.querySelector('.your-div');

element.ontouchmove = function(event) {
    if (!event.elementIsEnabled) {
        event.preventDefault();
    }
};

element.ontouchstart = function(event) {
    if (!event.elementIsEnabled) {
        event.preventDefault();
    }
};

element.ontouchend = function(event) {
    if (!event.elementIsEnabled) {
        event.preventDefault();
    }
};

var hammertime = Hammer(element).on("swiperight", function(event) {
    //do stuff
});
于 2014-06-19T02:19:44.473 回答