はじめに
皆さん「このページ本当によく開くから、全く遷移せず常にこのページを表示し続けたいのに
気がついたら他のページ遷移させちゃってた・・。」
みたいなことありませんか?
特に、ただブックマーク開き直せばなんとかなるようなページではなく
開いた後さらに条件を選んだりなんだりポチポチする必要があるサイトだと最悪です。
面倒の極みです。
これを繰り返して幾度。
うんざりしたので、そもそも気軽に別画面に遷移しないようにしました。
使うとこうなるよーというお話
使う前
気になるニュースがあったので、ついポチッと押せばそのまま遷移しちゃいます。
そのままあれよあれよと遷移していき、気がつけばYahoo! Japanのトップが遥か彼方にいってしまいました。
使った後
気になるニュースがあったので、ポチッと押すと警告が出てきました。
そういえばこのページからは離れたくなかったんだった!ホイールクリックで別タブで開こう!
と思い直すことに成功しました。
使い方
下記のコードをブックマークに保存しておいてください。
javascript:window.addEventListener('beforeunload',function(e){e.returnValue='遷移防止'},!1)
あとは遷移したくないページで、このブックマークを呼び出すだけです。
やってること
ブックマークレットとは
要するに、ブックマークに簡単なプログラムを仕込んでおいて、ユーザーが押すタイミングをトリガーに発火するってことです。
基本的には、ブラウザで動作する言語JavaScriptを実行するコードを仕込んでおくものだと思っています。
です。
今回のJavaScriptでやってること
beforeunload
(ウィンドウ、文書、およびそのリソースがアンロードされる直前に発生するイベント)時に、処理を実行しても問題ないかアラートを出すようにしています。
とはいえ、returnValueを設定しているだけですけど・・。
こちらを真似させていただきました。
参考:【JavaScript】ページ移動・更新を検知する