首頁 > web前端 > js教程 > 如何在 JavaScript 中將參數傳遞給事件偵聽器函數?

如何在 JavaScript 中將參數傳遞給事件偵聽器函數?

Patricia Arquette
發布: 2024-12-14 11:16:10
原創
180 人瀏覽過

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板