我有一个基于移动设备的网络应用程序。目前我在进行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();
}
});
答案 0 :(得分:0)
正如user3032973评论的那样,您可以使用touchLocked变量,该变量运行正常。
我已将它与Cordova Keyboard-Plugin结合使用。键盘显示时将禁用滚动,并在键盘隐藏时重新启用滚动:
var touchLocked = false;
Keyboard.onshowing = function () {
touchLocked = true;
};
Keyboard.onhiding = function () {
touchLocked = false;
};
document.ontouchstart = function(e){
if(touchLocked){
e.preventDefault();
}
};