我有我加刷卡导航,为移动浏览器一点点网上画廊。 我用很简单touchstart / touchmove / touchend事件跟踪做到了。
问题是,当我尝试在浏览器窗口来捏变焦如有手指在我增加了触摸事件处理程序,我是从调用了preventDefault猜测元素开始失败。
有没有一种方法,我可以跟踪我的导航图像,而进出浏览器的功能,阻断变焦的触摸事件? 我不介意堵单指滚动,如果它是在我的元素,但我想允许捏缩放。
下面的代码:
function addDragHandlers(eventDivId) {
var startX, endX;
var slides = $('#'+eventDivId);
slides.bind('touchstart', function(e) {
e.preventDefault();
startX = e.pageX;
endX = startX;
});
slides.bind('touchmove', function(e) {
e.preventDefault();
endX = e.pageX;
});
slides.bind('touchend', function(e) {
e.preventDefault();
if ( endX - startX < 0) {
// go to next image
} else if ( endX - startX > 0) {
// go to previous image
} else {
// do click action
}
}
});
}