我们有一个使用OnBlur和OnMouseDown事件组合的Web系统。不幸的是,出于一个奇怪的原因,OnMouseDown事件处理程序在调用OnBlur事件处理程序之前被触发。在HTML事件中设置优先级
这不是我们想要的。相反,我们希望在调用onMouseDown事件处理程序之前始终调用OnBlur事件处理程序。有没有办法这样做,也许给onBlur更高的优先级?
此前,我们没有使用onMouseDown事件处理函数,而是使用了onclick事件。但是,由于JavaScript的单线程特性,这带来了一些问题。
这取决于浏览器。 – voyager 2009-09-07 14:07:22
绝对是。在多个浏览器上编写代码总是很困难。但是,我们可以安全地做出我们针对IE的假设。 还有一个奇怪的是,当我用onclick事件替换onmousedown时,会发生什么情况是只调用了onblur事件处理函数,这很好,但是实际的onclick处理函数在我用字段onblur事件集。 随着onmousedown我们几乎在那里,但onblur事件是在onmousedown后触发,这不是我们想要的。 – user164701 2009-09-07 14:49:03
我认为mousedown然后模糊在这种情况下是非常标准的。记住onmousedown事件处理程序可能会返回false,在这种情况下焦点更改不会发生。 onclick通常应该工作;也许发布的代码不在那里工作? – bobince 2009-09-07 23:27:05