php中input鼠标失焦触发事件,小程序input组件事件tap、input、focus、blur触发顺序

测试过程 是先点击input输入框,输入一个字符,然后点击下面的view tap,从开发者工具上控制台得到的结果是:

input focus

input tap

input blur

view tap

由此我们得到input组件的从点击输入到点击其他组件这个过程中事件执行顺序是:foucs -> tap -> blur -> tap,最后一个tap是其他组件的点击事件,我想这个顺序应该是有些人认为的理论顺序,并且开发工具都是这样的。

但是,在实际真机上并不是这样的,我们用这段代码在真机上调试可以看到执行顺序是:

input tap

input focus

view tap

input blur

上面这是实际的触发顺序:**tap -> foucs -> tap -> blur **,看到真机的结果是不是明白什么了,tap事件是优先触发的,而开发工具上的模拟器的tap事件其实是模拟的click事件。所以在开发的过程中,一定要注意这一点,比如监听input失焦的时候干点什么事情,然后再点击按钮干点什么事情,如果这两件事件有先后顺序的话就一定要注意上面这个顺序了,不然真机测试会得不到预计的结果的。

另外关于input的tap事件和focus事件,在focus事件触发时会出现一丝丝卡顿现象,不知道是微信版本的问题还是疑问input是原生组件的原因,我是在foucs的时候弹出一个面板,用focus事件面板不是跟键盘同时弹出的,要稍微滞后一点,最后改为用tap事件解决问题了。在支付宝小程序里就没这个问题,而且支付宝小程序input组件是没有tap事件的。

最后编辑:2021-02-03作者:管理员

98f2ab2432bfed1c6db6e06864852aad?s=96&d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&r=G

这个作者貌似有点懒,什么都没有留下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值