【发布时间】:2014-06-08 04:30:31
【问题描述】:
我仍然会利用这个社区的专业知识和可用性。
我的问题是:为什么如果我们有类似的代码
<input name="" type="checkbox" onClick="first()" onChange="second()">
<script type="text/javascript">
function first(){
console.log('first')
}
function second(){
console.log('second')
}
</script>
在 Firefox 中 onclick 事件在 onchange 之前触发,而在 chrome 中则相反?
感谢您的回答,也许我没有以最好的方式解释
我知道使用 onMuseDown 可以解决问题,但我想通过 onchange 和 onclick 事件了解 Chrome 中这种行为的原因
【问题讨论】:
-
为什么要同时使用它们?我更喜欢 onClick 复选框以实现跨浏览器的一致性。顺序取决于浏览器实现,另请参阅:stackoverflow.com/questions/5575338/…
-
Chrome 会按照遇到的顺序触发事件,
onChange="second()" onClick="first()"会反转它。 -
@KyleNeedham:谢谢你的回答,但如果我在我的 chrome 版本中反转事件,结果仍然是一样的
标签: javascript events