EventTarget#addEventListener
EventTarget#addEventListener
は特定のイベントが起きた時に、それに連動する形である処理を実行したい時に使います。よくあるのが要素をクリックしたら「ほげほげ」するというような処理です。それはこのように書かれます。
document.getElementById('button').addEventListener(
'click',
() => {
console.log('clicked');
}
);
1番目がイベントの名前、そして2番目に連動して実行したい処理(関数)です。ちなみに、addEventListener
には3番目の引数も設定できます。これは仮引数false
が渡っているのでデフォルトでは有効ではない形でイベントが設定されます。
3番目の引数はuseCapture
と書かれたりしていて、子要素で同名のイベントが起きた時に親から連動処理を実行するかを定めるものです。例を用意しました。
useCapture
true
useCapture
false
EventTarget#removeEventListener
addEventListener
document.getElementById('button').removeEventListener(
'click',
() => {
console.log('clicked');
}
);
const onClick = () => {
console.log('clicked');
};
addEventListener
removeEventListener
const button = document.getElementById('button');
button.addEventListener('click', onClick);
button.removeEventListener('click', onClick);