【发布时间】:2015-03-07 04:41:03
【问题描述】:
我多年来以大致相同的方式声明事件参数:
element.onclick = function(e){};
element.onclick = function(event){};
element.addEventListener("click", function(e){}, false);
element.addEventListener("click", eventHandler, false); //preferred version
function eventHandler(e){}
etc.
- 必须是
e还是event。 - 它是作为最后一个参数附加还是也可以是第一个?
你能做到吗:
function eventHandler(e, a, b, c, d){}
e 仍然是指事件还是 d?
或者要使上述工作您需要明确使用关键字event?
所以一般的问题是:在 JavaScript 中声明事件参数时有哪些经验法则?
【问题讨论】:
-
可以根据需要命名参数,重要的是顺序...并在函数中使用相同的名称
-
chrome 如果省略则将其命名为事件,所以我猜事件更标准,但我喜欢 e。它只是对大多数(所有?)dom 事件重要的第一个参数/参数。
-
@dandavis:DOM 事件处理程序只接收一个参数:w3.org/TR/dom/#eventtarget
-
您是在谈论 DOM 事件处理程序,还是一般的事件处理程序?
标签: javascript events arguments