[微信小程序]离奇触发input组件的input事件
这篇文章记录一种离奇的input事件被触发的情况。
最近在开发小程序时,遇到了很奇怪的情况。当时wxml结构如下:
<view>
<input bindinput="input" />
<view class="clear" bind:tap="clear"></view>
</view>
input组件和.clear组件是没有相互覆盖的。
在input中输入内容后,如果此时input没有获得焦点,也就是软键盘没有弹出,点击.clear只触发clear事件。但当input获得焦点,软键盘弹出时,点击.clear,会先触发clear事件,然后触发input事件。此时查看input事件的事件对象e,发现e.detail只有value,不存在keyCode和cursor。也幸好能通过和正常的input事件的这些区别,才能在上面的情况时,采取不同的操作。
找了好久,始终没有发现为什么会这样。如果有大神也遇到过这种情况,请不吝赐教。