【发布时间】:2011-12-23 18:02:49
【问题描述】:
我正在使用一些事件处理程序,并且对某个方面感到有些困惑。
根据this 线程,Firefox 遵循 WC3 标准并将点击事件作为参数传递给您的处理程序。然后,您可以通过编码MyHandler(event) 访问此事件。但是,如果您已经传递了另一个参数怎么办?
具体来说,我的 onClick 函数是editItem(this),其中this 指的是被点击的表格行。但是,我需要在 editItem 函数内调用 event.stopPropagation() 以防止其他一些处理程序关闭。在 IE 和 Chrome 中,这是可行的,但在 Firefox 中,event.stopPropagation() 给了我一个空指针,这是有道理的,因为我没有将事件参数传入editItem(this)。
我的问题是,如何在我的 onClick 函数中同时接收 this 和 event ?我可以像editItem(this, event) 这样附加它们吗? Firefox 如何知道哪一项是事件,哪一项是我的个人参数?
【问题讨论】:
-
我非常推荐 quirksmode.org 上关于事件处理的优秀文章:quirksmode.org/js/introevents.html(是的,全部)。
-
先生,您是一位绅士和一位学者。下班后的书签。 :)
标签: javascript jquery events firefox cross-browser