首页 >web前端 >js教程 >如何在 JavaScript 中将参数传递给事件侦听器函数?

如何在 JavaScript 中将参数传递给事件侦听器函数?

Patricia Arquette
Patricia Arquette原创
2024-12-14 11:16:10183浏览

How Can I Pass Arguments to an Event Listener Function in JavaScript?

将参数传递给事件监听器函数

考虑以下场景:

var someVar = some_other_function();
someObj.addEventListener("click", function(){
    some_function(someVar);
}, false);

这里的问题是 someVar 在监听器函数中无法访问addEventListener 的。它被视为新的局部变量。

解决方案:利用事件目标的属性

不要尝试从侦听器函数外部访问变量,而是直接从事件目标的属性检索参数。

对于instance:

const someInput = document.querySelector('button');
someInput.addEventListener('click', myFunc, false);
someInput.myParam = 'This is my parameter';

function myFunc(evt)
{
  window.alert(evt.currentTarget.myParam);
}

HTML:

<button class="input">Show parameter</button>

此方法可确保将必要的信息封装在事件对象中,以便在调用侦听器函数时可以访问它。

以上是如何在 JavaScript 中将参数传递给事件侦听器函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn