次のシナリオを考えてみましょう:
var someVar = some_other_function(); someObj.addEventListener("click", function(){ some_function(someVar); }, false);
ここでの問題は、someVar がリスナー関数内でアクセスできないことです。 addEventListener の。これは、新しいローカル変数として扱われます。
リスナー関数の外部から変数にアクセスする代わりに、イベント ターゲットの属性から引数を直接取得します。
向けインスタンス:
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 中国語 Web サイトの他の関連記事を参照してください。