js addeventlistener 怎么传参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js addeventlistener 怎么传参数相关的知识,希望对你有一定的参考价值。

addEventListener的使用方式: 
target.addEventListener(type, listener, useCapture); 
target: 文档节点、document、window 或 XMLHttpRequest。 
type: 字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。 
listener :实现了 EventListener 接口或者是 javascript 中的函数。 
useCapture :是否使用捕捉,一般用 false 。
    例如:document.getElementById("testText").addEventListener("keydown", function (event)  alert(event.keyCode); , false);
参考技术A //addEventListener的使用方式: 

target.addEventListener(type, listener, useCapture); 

//target: 文档节点、document、window 或 XMLHttpRequest。 
//type: 字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。 
//listener :实现了 EventListener 接口或者是 JavaScript 中的函数。 
//useCapture :是否使用捕捉,一般用 false 。例如:document.getElementById("testText").addEventListener("keydown", function (event)  alert(event.keyCode); , false);

本回答被提问者和网友采纳

如何将一些参数传递给 addEventListener 中调用的函数? [复制]

【中文标题】如何将一些参数传递给 addEventListener 中调用的函数? [复制]【英文标题】:How to pass some parameters to function called in addEventListener? [duplicate] 【发布时间】:2012-11-14 06:42:15 【问题描述】:

可能重复:How to pass arguments to addEventListener listener function?

如何在 click 事件中通过 addEventListener 将一些参数(在本例中为整数)传递给函数?

我有两个按钮;如果我按右边,我想做一些事情,如果我按左边,我希望它做其他事情。

代码如下:

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
  

【问题讨论】:

【参考方案1】:

你没有。使用匿名函数:

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

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

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);

【讨论】:

以及如何删除这个 eventListener ?如果有匿名函数。 document.getElementById("myDIV").removeEventListener("mousemove", myFunction);

以上是关于js addeventlistener 怎么传参数的主要内容,如果未能解决你的问题,请参考以下文章

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

js addEventListener调用传参函数

将参数传递给 addEventListener AS3

addEventListener()第三个参数设置为true和false的区别?

addEventListener

怎么把js中通过url同时传多个参数怎么写