如何将一些参数传递给addEventListener中调用的函数? [英] How to pass some parameters to function called in addEventListener?

查看:78
本文介绍了如何将一些参数传递给addEventListener中调用的函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


可能重复:

如何将参数传递给addEventListener监听器函数?

如何在点击 addEventListener 将一些参数(在本例中为整数)传递给函数c>事件?

How can I pass some argument (in this case an integer) to a function through addEventListener on a click event?

我有两个按钮;如果我按下正确的一个我想做一些东西,如果我按左边的那个,那么我希望它做其他的事情。

I have two buttons; if I press the right one I want to do some stuff, if I press the left one then I'd like it to do something else.

这是代码:

document.getElementById('date_right').addEventListener( 'click', switch_date(1), false );
document.getElementById('date_left').addEventListener( 'click', switch_date(-1), false );
  function switch_date( k )
  {
    if(k==1)
    {
      //do stuff
    }
  else
  {
    //another stuff
  }
}


推荐答案

你没有。使用匿名函数:

You don't. Use anonymous functions:

document.getElementById('date_right').addEventListener('click', function () {
    switch_date(1);
}, false);
document.getElementById('date_left').addEventListener('click', function () {
    switch_date(-1);
}, false);

或者使用不带参数的命名函数:

Or use named functions which do not take arguments:

function onRightDateClick() {
    switch_date(1);
}

function onLeftDateClick() {
    switch_date(-1);
}

document.getElementById('date_right').addEventListener('click', onRightDateClick, false);
document.getElementById('date_left').addEventListener('click', onLeftDateClick, false);

这篇关于如何将一些参数传递给addEventListener中调用的函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆