[转]iOS Safari 中click点击事件失效的解决办法
Posted 糖伴西红柿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]iOS Safari 中click点击事件失效的解决办法相关的知识,希望对你有一定的参考价值。
问题起因:
在微信公众号开发(微站)过程中用jquery的live方法绑定的click事件点击无效(不能执行)
问题描述
当使用委托给一个元素添加click
事件时,如果事件是委托到 document
或 body
上,并且委托的元素是默认不可点击的(如 div
, span
等),此时 click
事件会失效。
解决办法
解决办法有 4 种可供选择:
- 将
click
事件直接绑定到目标元素(即.target
)上 - 将目标元素换成
<a>
或者button
等可点击的元素 - 将
click
事件委托到非document
或body
的父级元素上 - 给目标元素加一条样式规则
cursor: pointer;
推荐后两种。从解决办法来看,推测在 safari 中,不可点击的元素的点击事件不会冒泡到父级元素。通过添加 cursor: pointer
使得元素变成了可点击的了。
以上是关于[转]iOS Safari 中click点击事件失效的解决办法的主要内容,如果未能解决你的问题,请参考以下文章
iOS 9 上的 Safari 不会触发隐藏输入文件的点击事件