スクリプト
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/msie|trident/) {
var url=location.protocol + "//" + location.hostname + location.pathname;
var msg="<span style='font-size:14px;'>当サイトは26年の歴史を歩んできたInternet Exploerのサポートを終了しました。<br><br>";
msg+="<strong><a target='_blank' href='https://www.microsoft.com/ja-jp/edge#platform'>Edgeのダウンロード</a></strong><br><br>";
msg+="<strong><a href='microsoft-edge:" + url + "' target='_self'>Microsoft Edge ブラウザーで表示</a></strong>";
// あとは msg を表示する
}
スクリプトの特長
Microsoftにメールするのとほぼ同等のことをご自身で実装することができます。
・IEであるかどうか判断
・正しいURLの取得
・Microsoft Edgeのダウンロードの促し
・同じページをEdgeで開き直す
Edgeで強制的に開くためのコツ
リンクのURLの先頭に
microsoft-edge:
を加えるのみです。
例えばこの記事をIEでなくEdgeで強制的に開かせるには
<a href="microsoft-edge:https://qiita.com/nanakochi123456/items/e119a582dac242602d8b">Edgeで開く</a>
にすればよいわけです。
※ちなみに、ChromeでもFirefox でも microsoft-edge: スキーマは反応してしまいます。
edgeのInternet Explorerでも反応します。
中身は完璧なIEでないInternet Explorerモードでもサーバー側にはIEとして認識されますので、
Internet Explorerモードも活用するとよいかもしれません。
Internet Explorerユーザーに対して、edgeをお勧めしたほうが良い理由
chromeやOperaとかの商用ブラウザ、Firefoxとかの非商用ブラウザとか多々ありますが、
edgeはMicrosoftが作った、ということにとても意味があります。
アンケート調査によっても、Microsoftが作ったから安心、というような票もいくつか散見されました。
Edge対応ブラウザ
上記ページを見て頂ければわかりますが
・Windows 7/8/8.1/10(無論Win11も)
・Windows Server 2016/2019
・Intel/Apple M1 Mac
・その他iOS、Android
に対応しています。
Internet Explorer 26年間も長きとありがとうございます。
少し前の時期ですが、こんな曲まで作ってしまいました。
当時は常時SSLが浸透していなかったのでこんなことができたのですが、
今ではこういうことするとSSLで跳ねられてしまいます。