关于javascript:blur与click的冲突问题

5次阅读

共计 273 个字符,预计需要花费 1 分钟才能阅读完成。

  • blur 事件:当元素失去焦点时触发 blur 事件;blur 和 focus 事件不会冒泡,其余表单事件都能够
  • click 事件:当点击元素时触发 click 事件;所有元素都有此事件,会产生冒泡。

在开发过程中遇到搜寻框显示查问倡议信息时,应用 blur 去敞开下拉框,单点击下拉框内容时,blur 事件先于 click 事件,导致下拉框间接敞开,未能执行 click 事件

解决方案一:

 应用 setTimeout 将 blur 事件提早进行,但会产生一种进展感

解决方案二:

 将 click 事件换成 mousedown 事件,这样事件的执行程序就变成 mousedown > mouseup > click
正文完
 0