欢迎访问 如意编程网!

如意编程网

当前位置: 首页 > 前端技术 > HTML >内容正文

HTML

IOS上给body和html绑定click事件的坑

发布时间:2022/11/16 HTML 23 老码农
如意编程网 收集整理的这篇文章主要介绍了 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事件的坑的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得如意编程网网站内容还不错,欢迎将如意编程网推荐给好友。