当用户使用双指滚动(例如:OSX)时,我正试图找到一种避免在浏览器中触发后退/前进的方法。
答案 0 :(得分:0)
移动设备因处理触摸事件而臭名昭着。但是,如果在DOM触摸事件上返回false或preventDefault(),则会阻止浏览器滚动/缩放/导航。
以下示例将阻止所有触摸执行默认行为;意思是链接触摸不会注册,滚动不起作用等。
$("body").on("touchstart", function(e){
e.preventDefault();
});
以下内容将阻止多点触控的默认功能。
$("body").on("touchstart", function(e){
if (e.originalEvent.touches.length == 2) {
e.preventDefault();
}
});
如果您需要允许用户点击链接,您可以按照以下方式执行操作。
$("body").on("touchstart", function(e){
if (e.target.tagName != "A") {
e.preventDefault();
}
});