IOS上给body和html绑定click事件的坑
2024-09-03 08:08:51
场景: 在ios上(包括iPhone和ipad)
给window ,html,document,body绑定click事件,点击不会触发
由于ios浏览器都用的safari内核,所以ios浏览器全部中枪
解决方案:
- 改用touch事件(如果是弹出层的话,会有点透问题)
- 如何避免bug触发:不要委托到body结点上,委托到任意指定父元素都可以,或者使用原生具有该事件的元素,如使用click事件触发就用a标签包一层。
- 已触发如何修补:safari对事件的解析非常特殊,如果一个事件曾经被响应过,则会一直冒泡(捕获)到根结点,所以对于已大规模触发的情况,只需要在body元素的所有子元素绑定一个空事件就好了,如: (“body > *”).on(“click”, function(){};)
最新文章
- 创建并追加img元素(jquery!)
- 深入剖析z-index属性
- iso网络各层协议
- 6/8/9/10/11 Sprint2 看板和燃尽图
- Myeclipse 主题下载
- YAML 语言语法
- inno setup脚本,涵盖了自定义安装界面,调用dll等等应用
- C Primer Plus(第五版)2
- navigationController 之间的切换
- 04737_C++程序设计_第5章_特殊函数和成员
- C#多线程及GDI(Day 23)
- Judge Route Circle
- mysql读写分离——中间件ProxySQL的简介与配置
- 集合抽象数据类型的C语言实现
- 常用的16个c/c++面试题
- easyui增删改查前段代码
- 【代码笔记】Web-ionic-index创建侧边栏
- Winform开发框架之图表报表在线设计器2-图表-SNF.EasyQuery项目--SNF快速开发平台3.3-Spring.Net.Framework
- RocketMQ-quickstart(批量消费)
- 数字与字符串之间的转换以及%f与%lf的输入输出用法区别