我有一个基于移动的web应用程序。目前,我遇到了一个问题,当ajax调用。可以在ipad设备上单击包含在div中的等待微调器。正在触发的javascript事件是touchstart。有什么方法可以阻止这个事件经过正常的处理吗?
尝试调用以下代码,但不起作用。
Disable
document.ontouchstart = function(e){ e.preventDefault(); }
Enable
document.ontouchstart = function(e){ return true; }如何处理touchstart
$(document).on('touchstart', function (eventObj) {
//toggle for view-icon
if (eventObj.target.id == "view-icon") {
$("#view-dropdown").toggle();
} else if ($(eventObj.target).hasClass("view-dropdown")) {
$("#view-dropdown").show();
} else {
$("#view-dropdown").hide();
}
});发布于 2015-03-06 03:10:59
正如user3032973评论的那样,您可以使用touchLocked变量,它可以完美地工作。
我将它与Cordova键盘插件结合使用。显示键盘时将禁用滚动功能,隐藏键盘时将重新启用滚动功能:
var touchLocked = false;
Keyboard.onshowing = function () {
touchLocked = true;
};
Keyboard.onhiding = function () {
touchLocked = false;
};
document.ontouchstart = function(e){
if(touchLocked){
e.preventDefault();
}
};https://stackoverflow.com/questions/24619965
复制相似问题