表单blur事件与按钮click事件冲突解决

121 阅读1分钟

情况1: 在输入框未失焦的情况下,点击按钮需要点击两下才能执行click事件

原因: 第一下点击执行了表单失焦的事件,而js是单线程,所以导致第一下点击click并没有执行click事件

解决方法: 将click事件改为mousedown事件

情况2: 想要实现点击按钮,输入框并不失焦

解决方法: mousedown事件方法内增加event.preventDefault()