通常这是代码:
var touchmoved;
$('button').on('touchend', function(e){
if(touchmoved != true){
// you're on button click action
}
}).on('touchmove', function(e){
touchmoved = true;
}).on('touchstart', function(){
touchmoved = false;
});
但是,此代码似乎不适用于动态生成的ajax元素。
为此,我有这段代码:
var touchmoved;
$(document).on('click touchend', '.menu', function(){
if(touchmoved != true){
// you're on button click action
}
}).on('touchmove', '.menu', function(e){
touchmoved = true;
}).on('touchstart', '.menu', function(){
touchmoved = false;
});
现在它适用于Web界面,但似乎不适用于移动界面。
是否有可以进行的工作,以便我可以动态地进行ajax调用并使其正常工作?
答案 0 :(得分:0)
结果证明我最初发布的代码是正确的答案。
我正在使用一个名为nicescroll的第三方脚本,该脚本在我下载的版本中存在一些错误。
因此,对于子孙后代来说,目前防止动态生成元素触摸启动的方法是:
var touchmoved;
$(document).on('click touchend', '.menu', function(){
if(touchmoved != true){
// your click action here!!!
}
}).on('touchmove', '.menu', function(e){
touchmoved = true;
}).on('touchstart', '.menu', function(){
touchmoved = false;
});