在事件监听器函数中传递参数

时间:2014-08-21 19:42:38

标签: javascript html

我想将参数传递给在事件侦听器内部调用的函数。下面的代码显示了我想要做的事情,但它不是让我按常规做的。什么是解决方法?

HTML code:

<button id='btn'>Click Me</button>

JavaScript代码:

<script>
document.getElementById('btn').addEventListener( "click",btnClick(5) );
function btnClick(argument)
{
console.log("Button clicked with argument : " + argument);
}
</script>

控制台应为:

Button clicked with argument : 5

谢谢你们。

1 个答案:

答案 0 :(得分:4)

使用匿名函数

document.getElementById('btn').addEventListener( "click", function() {
    btnClick(5);
}, false );

如果您需要保留this的值,可以使用call或apply

btnClick.call(this, 5);