我需要跟踪用户触摸事件。我想跟踪用户何时从边缘滑动。
例如,当用户从左侧垂直边缘滑动时,我将显示一个菜单,从右侧边缘发出警报,并在用户从顶部滑动时显示另一个菜单。
我找不到类似的用法。
我该如何做出这种行为?跟踪从边缘滑动?
我使用hammer.js尝试了此操作,因为我使用的是jQuery,
但是其他库(QuoJS,TouchSwipe,Touchy等)对我来说也可以。
fiddle :http://jsfiddle.net/mavent/ym4JV/51/
$(document).hammer()
.on("tap doubletap hold drag swipe pinch rotate dragup dragdown swipeup swipedown", function (event) {
$('#updateArea').html(event.type + ". direction:" + event.gesture.direction + "<br>deltaX:" + event.gesture.deltaX.toFixed(2) + ". deltaY:" + event.gesture.deltaY.toFixed(2) + "<br> centerX:" + event.gesture.center.pageX.toFixed(2) + ". centerY:" + event.gesture.center.pageY.toFixed(2));
var currentText = $('#logArea').text();
$('#logArea').text(""+currentText+" . "+event.type);
});
最佳答案
使用Hammer.js v2.0.4,我发现这最有效:
$("html").hammer().on('swiperight', function (e) {
var endPoint = e.pointers[0].pageX;
var distance = e.distance;
var origin = endPoint - distance;
if (origin <= 15) {
// They swiped, starting from no more than 15px away from the edge.
}
});
关于Javascript触摸运动,跟踪用户何时从边缘滑动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24163202/