转载自:/Steping/p/5737547.html
问题起因:
在微信公众号开发(微站)过程中用jquery的live方法绑定的click事件点击无效(不能执行)
问题描述
当使用委托给一个元素添加click
事件时,如果事件是委托到document
或body
上,并且委托的元素是默认不可点击的(如div
,span
等),此时click
事件会失效。
解决办法
解决办法有 4 种可供选择:
将click
事件直接绑定到目标元素(即.target
)上将目标元素换成<a>
或者button
等可点击的元素将click
事件委托到非document
或body
的父级元素上给目标元素加一条样式规则cursor: pointer;
推荐后两种。从解决办法来看,推测在 safari 中,不可点击的元素的点击事件不会冒泡到父级元素。通过添加cursor: pointer
使得元素变成了可点击的了。
引用:/solve-ios-safari-click-event-bug/