ウェブサイトにいまだに出くわす右クリック禁止、テキストの選択禁止、コピーを禁止する行為。ユーザビリティーを著しく阻害する以外に何のメリットも生まないこれらのスクリプトがいまだに埋め込まれているサイトに出くわすことがある。
そういったサイトは信用しないほうがいいのだけど、たまに公的な施設の公式サイトでもこれらのスクリプトが設定されていることがあり、ムダにイラつくことがある。そういったサイトの操作禁止のスクリプトを一網打尽にできるブックマークレットを作った。
コードは以下のような感じになる。
function () {
['contextmenu','selectstart','copy'].forEach((eventName) => {
document.addEventListener(eventName,(e) => {
e.stopPropagation();
},true)
})
}
右クリック禁止解除のためのcontextmenuイベント、テキスト選択禁止解除用にselectstartイベント、コピー禁止解除用にcopyイベントの内容を阻止するメソッドで上書きしている。
ブックマークレットとしてコピーできるようにしたのが以下のものだ。
javascript:(function(){['contextmenu','selectstart','copy'].forEach((eventName)=>{document.addEventListener(eventName,(e)=>{e.stopPropagation();},true)})})();
ブックマークレットは、ChromeもSafariも、一度どこかテキトーなページをブックマークし、それをあとで編集することで作成する。編集時にURLの部分にJavascriptのコードをペーストして完成する。





