IOS下点击事件失效的情况及解决方法

今天遇到了这样的问题,很简单的一个点击事件

$(document).on('click', 'dl dt', function() {
  //something()
});

在pc以及安卓设备都是正常的,但是在ios上面就失效了。


问题描述:
当使用委托给一个元素添加click事件时,如果事件是委托到 document或 body上,并且委托的元素是默认不可点击的(如 div, span等),此时 click事件会失效。
解决方法
1、​将 click 事件直接绑定到目标​元素(​​即 .target)上;
2、将目标​元素换成 a 或者button 等可点击的​元素;
​3、将 click 事件委托到​​​​​非 document 或 body 的​​父级元素上;
​4、给​目标元素加一条样式规则 cursor: pointer。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容