addEventListener()メソッドでこのような問題が発生するのは初めてです。 setTimeoutで使用しようとすると、addEventListenerに「クリック」プロパティがあっても、その関数が自動的に呼び出されます。addEventListener + setTimeout
<button id="test">Test</button>
document.getElementById("test").addEventListener("click", setTimeout(myFunc, 2000));
function myFunc() {
console.log("Hello");
}
あなたはのsetTimeoutを呼び出し、それがクリックハンドラに戻り、何を割り当てるため。だからタイムアウトはIDを返すので、基本的には '... Listener(" click "、133)' – epascarello
addEventListenerの2番目の引数は、関数を呼び出す結果ではなく、関数である必要があります –