我无法捕获某些设备(如Tab 3和Galaxy grand)中可滚动div内的div上的click事件。但它在其他Android设备上工作得非常好。 我的父div有风格
#parentDiv { overflow:true}
我尝试了所有类似
的方法$(document).on("click","#id"+i,function(){
alert("tapped");
});
$(document).on("tap","#id"+i,function(){
alert("tapped");
});
$(document).on("swipeleft","#id"+i,function(){
alert("tapped");
});
其中" id" + i是parentDiv内部动态生成的div
即使我尝试用"按钮"替换div。和" a"标签,仍然无法正常工作
答案 0 :(得分:0)
我没有得到你的问题,但我可以给你一个调试问题的想法。我不认为,这是因为可滚动的HTML。您可以做的是,在迭代元素时,使用一些警告语句添加onlick属性。如果它有效,则问题出现在脚本中。
例如,
<强> JS 强>
var ele = '';
for(var i=0; i<arr.length; i++){
ele += '<a href="#" onclick="alert('+ i +')">element +' i '+</a>'
}
答案 1 :(得分:0)
我遇到了类似的问题并且解决起来很简单,因为你没有详细说明,如果你正在使用dinamically添加或中断div。
确保在准备页面触发时dom存在于dom中,如果你正在添加div或parent dinamically,诀窍是将click事件附加到父级中并按子级过滤,这样点击事件就是附加到现有元素。 父项应该从一开始就存在,如果你将同一个事件定位到所有子div,则使用一个类,如果没有你的id就可以了。
喜欢的东西 $('#parentDiv')。on('click','。myClassDiv',function(){...});