今年都在写移动端页面,可是大多数用的都是框架,不多出现事件兼容问题。今天用原生写了个ios的页面,事件兼容花了约120',必需要记录一下。前端
正常解决ios上click事件失效方法有这几个方法:ios
我自己使用的就是事件委托,但挨个试了,依旧没有效果,想到家里的娃娃,泪奔~。
可是本着一个伪程序媛bug没有改完怎么能下班的精神,仍是继续找缘由。segmentfault
这样下来,只能是个人方法可能存在某些问题,继续分析:浏览器
问题找到了,确定某行代码报错了,一行一行找。
最后问题是:我用event对象中的path属性,可是在safari中为undefined
解决方案:框架
const path = event.path || (event.composedPath && event.composedPath());
在fireFox下好像也有这个问题,我没有亲测,不肯定。iphone
原本想查Android和iphone下event具体差异,奈何今天没有时间了,明天补上。spa
但愿将来某一天,某家浏览器一统天下,解放咱们这些前端狗。哈哈哈code
欢迎跟我一块儿挖坑、填坑,哈哈哈对象