IOS公众账号,点击select事件没有反应

针对微信iOS客户端特定版本中出现的点击事件失效问题,尤其是在iphonex等机型上的三级联动选择器上,本文详细分析了bug原因并提供了解决方案。通过监听blur事件并滚动页面至body顶部,确保了点击事件的正常触发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微信公众号出现了点击无效的bug!!测试调查发现,只有iphonex、iphone6,ihpone7,ihpone8等部分机型更新到最新版本微信后会出现该问题

在页面中写了一个弹出框的三级联动,点击第三个时没有反应,点击多次,竟然调起了下面的提交按钮事件。但是,如果将页面上划一下,select点击事件就可以使用。推测是body没有正确重新渲染,导致点击事件不处于body内而无法触发。

解决方案:全局设置:

/**
 * 处理iOS 微信客户端6.7.4 键盘收起页面未下移bug
 */
(/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', (e) => {
    // 这里加了个类型判断,因为a等元素也会触发blur事件
    ['input', 'textarea','select'].includes(e.target.localName) && document.body.scrollIntoView(false)
}, true)

参考链接:http://www.cocoachina.com/cms/wap.php?action=article&id=25941

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值