在我們想要傳送參數給事件監聽器函式的場景中,我們可能會遇到參數為函式內無法訪問。當我們將變數指派給函數時,可能會發生這種情況,如下所示:
var someVar = some_other_function(); someObj.addEventListener("click", function(){ some_function(someVar); }, false);
這裡,問題是 someVar 的值在事件偵聽器的函數中不可用。
為了解決這個問題,我們可以利用事件物件的 target 屬性來檢索傳遞給偵聽器的參數 功能。考慮這個例子:
const someInput = document.querySelector('button'); someInput.addEventListener('click', myFunc, false); someInput.myParam = 'This is my parameter'; function myFunc(evt) { window.alert(evt.currentTarget.myParam); }
在此修改後的程式碼中:
這種方法有效地允許我們將參數傳遞給事件偵聽器函數沒有遇到原來的問題。
以上是如何將參數傳遞給 addEventListener 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!