IOS上给body和html绑定click事件的坑
如意编程网
收集整理的这篇文章主要介绍了
IOS上给body和html绑定click事件的坑
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
场景: 在ios上(包括iPhone和ipad)
给window ,html,document,body绑定click事件,点击不会触发
由于ios浏览器都用的safari内核,所以ios浏览器全部中枪
解决方案:
- 改用touch事件(如果是弹出层的话,会有点透问题)
- 如何避免bug触发:不要委托到body结点上,委托到任意指定父元素都可以,或者使用原生具有该事件的元素,如使用click事件触发就用a标签包一层。
- 已触发如何修补:safari对事件的解析非常特殊,如果一个事件曾经被响应过,则会一直冒泡(捕获)到根结点,所以对于已大规模触发的情况,只需要在body元素的所有子元素绑定一个空事件就好了,如: (“body > *”).on(“click”, function(){};)
总结
以上是如意编程网为你收集整理的IOS上给body和html绑定click事件的坑的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 搭建一个简单的支持html模版expre
- 下一篇: js 去掉html标签及