IOS 中 javascript click 事件失效

前端之家收集整理的这篇文章主要介绍了IOS 中 javascript click 事件失效前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

场景

移动端 web

过程

在 IOS 中,点击按钮包裹的图片区域,无法触发 click 事件

在 android 中正常

测试机型

  • IPHONE 6 PLUS IOS 9.3.3

    • 微信

    • Safari

  • 魅族 MX5 android 5.1

    • 微信

    • 系统浏览器

    • chrome (比系统浏览器更卡)

代码

button:before {
content: '';
position: absolute;
top: 0;
right: 0;
height: 100%;
width: 100%;
background: rgba(0,.4);
}

button img {
position: relative;
}

button:active:before {
z-index: 1; / 重点来了 /
}

分析

可能是按钮激活时,伪元素层级相对 IMG 元素改变了,阻碍了 click 事件的冒泡

解决方

  • 修改样式

  • 使用 touch 事件替换

猜你在找的JavaScript相关文章