时间:2021-05-20
事件背景:
最近在做一个移动端业务的时候碰到一个bug,在ios上对body绑定click事实现事件代理冒泡至某些元素上尽然不生效。
思考:
暂借助jquery展示下事件绑定代码,将所有标签含有data-tip属性的元素通过事件代理至body
这样做在android和pc上都可以正常实现,但是在ios上面对部分标签尽然不生效。比如 tr , span ...这样的标签
解决办法:
1.将click事件换成touch事件,同时还可以解决300ms的click延迟问题,但是需要e.stopPropagation()来阻止冒泡的处理会非常麻烦。
2.在对不能正常冒泡的元素上再进行一次事件绑定,比如对于tr可以在<table>上再进行一次事件代理。
3.最简洁的办法,在不能正常冒泡的元素的css属性里面添加,cursor:pointer属性。
4.换成可以正常冒泡的标签。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、问题:今天遇到这样问题,给某个元素同时绑定touchStart及click事件后,若在移动设备上,当你点击时,会依次出发这两个事件。因为移动端设备上的cli
一.on('clcik')与$('').clcik()方法的区别:on('clcik'):事件委托机制//在body元素上绑定click事件处理函数handle
小盒学生登录不了的原因及解决方法如下: 1、平台系统正在升级,这时会登录不上,解决办法:只要稍后再重新登录下。 2、平台APP加载有故障,解决办法:需要卸载
只在元素上使用submit事件如果要在form中绑定事件处理程序时,应该只在元素上绑定submit事件,而不是给提交按钮绑定click事件。March:这个方式
cpu有温度但是点不亮的原因及解决办法如下: 1、主机没有正常启动,先清空CMOS试试,如果还不行,去掉所有的外部设备。 2、只保留主板、CPU、内存、显卡