我正在使用一些事件处理程序,但在一个方面有点困惑。
根据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 如何知道哪一个是事件,哪一个是我的个人参数?
最佳答案
您可以按照您提到的那样执行 editItem(this, event)
。那么你的函数只需要像这样定义:
function editItem(element, event){
...
}
根据参数的顺序,它会知道哪个参数是哪个。
关于javascript - Firefox 与 IE/Chrome 中的事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6498788/