【问题标题】:Pass Argument In Event Listener Function [duplicate]在事件侦听器函数中传递参数 [重复]
【发布时间】:2014-10-15 13:51:37
【问题描述】:

我想将参数传递给在事件侦听器内部调用的函数。下面的代码显示了我想要做的事情,但它并没有让我按照惯例去做。有什么解决方法?

HTML 代码:

<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

谢谢大家。

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    使用匿名函数

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

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

    btnClick.call(this, 5);
    

    【讨论】:

    猜你喜欢
    • 2011-09-18
    • 2012-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-23
    • 1970-01-01
    • 2010-09-20
    相关资源
    最近更新 更多