将参数传递给addEventListener中调用的函数

时间:2014-05-08 17:15:03

标签: javascript

如果我在addEventListener中调用函数,如下所示:

document.querySelector('.elem').addEventListener('click', expand);

expand函数接受参数。我怎样才能将这些论点传递给它?

我试过

document.querySelector('.elem').addEventListener('click', expand(arg1, arg2, arg3));

但这不起作用。

1 个答案:

答案 0 :(得分:3)

使用匿名函数调用

document.querySelector('.elem').addEventListener('click', function() {
    expand(arg1, arg2, arg3)
}, false);

如果您需要this的值作为元素,则可以使用bindapplycall

document.querySelector('.elem').addEventListener('click', function() {
    expand.apply(this, [arg1, arg2, arg3]);
}, false);