1. ホーム
  2. javascript

[解決済み] ユーザーがIEを使用しているかどうかを確認する

2022-03-21 07:54:54

質問

あるクラスを持つdivをクリックすると、以下のような関数を呼び出しています。

ユーザーがInternet Explorerを使用しているかどうかを関数の開始時に確認し、他のブラウザを使用している場合は中止/キャンセルして、IEユーザーのみに実行されるようにする方法はありませんか?ここのユーザーは全員IE8以上のバージョンを使っているので、IE7以下のバージョンをカバーする必要はないでしょう。

どのブラウザを使用しているかが分かれば最高ですが、必須ではありません。

機能例です。

$('.myClass').on('click', function(event)
{
    // my function
});

解決方法は?

以下のJavaScriptメソッドを使用してください。

function msieversion() 
{
    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

    if (msie > 0) // If Internet Explorer, return version number
    {
        alert(parseInt(ua.substring(msie + 5, ua.indexOf(".", msie))));
    }
    else  // If another browser, return 0
    {
        alert('otherbrowser');
    }

    return false;
}

詳細は、以下のマイクロソフトのサポートサイトをご覧ください。

スクリプトからブラウザのバージョンを判断する方法

更新情報 (IE 11対応)

function msieversion() {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

    if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))  // If Internet Explorer, return version number
    {
        alert(parseInt(ua.substring(msie + 5, ua.indexOf(".", msie))));
    }
    else  // If another browser, return 0
    {
        alert('otherbrowser');
    }

    return false;
}