動かざることバグの如し

近づきたいよ 君の理想に

クリックイベントとかを無効化するJavascript

環境

他のブラウザは知らん(他人事

背景

絶対にニッチなニーズだが、特定のDOMの特定のイベントを削除したいとかスクロールイベントを無効化したい事があると思う(ない

JSはやはりなんでもありなので、なんとかなる

とりあえず動くコードよこせ

以下はスクロールイベントを無効化するコード

for (let el of getEventListeners(window)['scroll']) { window.removeEventListener('scroll',el.listener,el.useCapture); }

https://alvarotrigo.com/fullPage/examples/normalScroll.htmlのようなサイトで実行すると分かるが、スクロールによるJavaScriptが一切実行されなくなる。

以下は特定の要素のクリックを無効化する例

const elm = document.getElementById("bigCookie");
for (let el of getEventListeners(elm)['click']) { elm.removeEventListener('click', el.listener,el.useCapture); }

みんな大好き(?)クッキークリッカーのサイトで実行できる。見事にクッキーをクリックしてもカウントが回らなくなる。