我在滑动菜单/导航器的页面元素中有一个 DIV。我正在尝试在此元素上捕获 Hammer 事件,但只能访问“触摸”事件。
var hammer = Hammer(getElementById('myDiv'));
hammer.on('touch swipe', function(e){
console.log(e);
});
是否有我遗漏的东西,或者 Onsen UI 是否使用 Hammer 设置了干扰的特定内容?
我在滑动菜单/导航器的页面元素中有一个 DIV。我正在尝试在此元素上捕获 Hammer 事件,但只能访问“触摸”事件。
var hammer = Hammer(getElementById('myDiv'));
hammer.on('touch swipe', function(e){
console.log(e);
});
是否有我遗漏的东西,或者 Onsen UI 是否使用 Hammer 设置了干扰的特定内容?
您是否取消了默认触摸事件?它对我有用。
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
});