addEventListener リスナー関数に引数を渡すにはどうすればいいですか? 質問する

addEventListener リスナー関数に引数を渡すにはどうすればいいですか? 質問する

状況はこんな感じです。

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

問題は、 の値が のsomeVarリスナー関数内では可視ではなくaddEventListener、おそらく新しい変数として扱われていることです。

ベストアンサー1

イベントのターゲット属性から引数を取得すればいいのではないでしょうか?

例:

const someInput = document.querySelector('button');
someInput.addEventListener('click', myFunc, false);
someInput.myParam = 'This is my parameter';
function myFunc(evt)
{
  window.alert(evt.currentTarget.myParam);
}
<button class="input">Show parameter</button>

JavaScript はプロトタイプ指向の言語です。覚えておいてください。

おすすめ記事