<div class="mskeLayBg">
<div class="mskelayBox">
<div class="mskeClaose"></div>
</div>
</div>
$(document.body).on("click",".mskeClaose",function(){
$(".mskeLayBg").hide();
});
我这样操作dom有什么问题吗?为什么在手机端他hide不掉的???
<div class="mskeLayBg">
<div class="mskelayBox">
<div class="mskeClaose"></div>
</div>
</div>
$(document.body).on("click",".mskeClaose",function(){
$(".mskeLayBg").hide();
});
我这样操作dom有什么问题吗?为什么在手机端他hide不掉的???
测试了下,你把
$(document.body)
改成
$('.mskeLayBg')
原因不清楚,你把事件绑定到body,window,html,document都不行
还有既然用了jq,选择body用
$('body')
话说你是iOS吗?经过测试,安卓可以在body上绑定事件,但是iOS不行,估计上iOS的bug,不过一般没有这样搞的,绑定到上一级就行了,没必要绑定到body或者window上面
$(document).ready(function() {
$(".mskeClaose").on("click", function() {
$(this).hide();
});
});
@看不懂未来 说的好,我第一眼看到楼主的代码感觉应该没啥问题才对,$(document.body)跟$('body')没啥太大的差别。然后自己亲自测试了一下,不管PC还是手机都可以隐藏,没什么问题,当然我不是用的真机,我用的chrome的自带的调试,不知道为什么楼主的有问题。PS:有个小猜测,楼主应该没忘记加载JQUERY库吧
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
看到评论我惊悚了....
楼主的写法叫事件委托好么...代码木有问题的哈。
未达到预期效果原因应该是如下:
jquery版本过低 < 1.7
dom还未加载,js先执行
友情提示:手机click事件,通过touch/top等事件处理,或许会更好!!