ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で Internet Explorer 8 以降を検出し、それに応じて関数を実行するにはどうすればよいですか?

JavaScript で Internet Explorer 8 以降を検出し、それに応じて関数を実行するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-27 17:06:11805ブラウズ

How Can I Detect Internet Explorer 8 or Higher in JavaScript and Run a Function Accordingly?

Internet Explorer の検出とカスタム関数でのその適用性

Internet Explorer 8 以降を使用するユーザーにのみ実行したい関数があります。関数を実行する前に、ユーザーが IE を使用しているかどうかを確認するにはどうすればよいですか?

JavaScript でのブラウザ検出

ブラウザに関する情報を提供するユーザー エージェント文字列を調べることで、IE を確認できます。簡単なアプローチは次のとおりです。

if (window.document.documentMode) {
    // Do IE stuff
}

この条件は、IE に固有の documentMode プロパティが存在するかどうかを確認します。存在する場合、ブラウザは IE を使用しています。

ブラウザ検出にヘルパー関数を使用する

複数のブラウザをチェックする必要がある場合、またはコードをより再利用しやすくするために、ヘルパー関数を使用できます。役立つ:

function detectIEEdge() {
    var ua = window.navigator.userAgent;

    var msie = ua.indexOf('MSIE ');
    if (msie > 0) {
        return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
    }

    var trident = ua.indexOf('Trident/');
    if (trident > 0) {
        var rv = ua.indexOf('rv:');
        return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
    }

    var edge = ua.indexOf('Edge/');
    if (edge > 0) {
        return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
    }

    return false;
}

この関数をイベント リスナーで次のように使用できます。

$('.myClass').on('click', function(event) {
    if (detectIEEdge()) {
        // Do IE stuff
    }
});

結論

これらのブラウザ検出技術を組み込むことで、ユーザーが Internet Explorer を使用している場合など、特定の条件が満たされた場合にのみ関数を実行するように調整できます。これにより、コードが意図したとおりに動作し、より良いユーザー エクスペリエンスが提供されるようになります。

以上がJavaScript で Internet Explorer 8 以降を検出し、それに応じて関数を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。