ホームページ >ウェブフロントエンド >jsチュートリアル >`navigator.appName` と `navigator.appVersion` を使用すると、古い IE バージョンを検出できますか?
JavaScript での IE バージョン (v9 より前) の検出
検出基準と提案されたコード
ユーザーが v9 より前のバージョンの Internet Explorer を使用して Web サイトにアクセスしているかどうかを判断するために、提案されたコードは navigator.appName プロパティと navigator.appVersion プロパティを利用します。
if (navigator.appName.indexOf("Internet Explorer") != -1) { // User is using IE // Check for IE version < 9 }
このコードは実行しますか?トリック?
ユーザー エージェント文字列のスプーフィングと機能サポートの検出に関して提起された懸念に対処しているにもかかわらず、提案されたコードにはいくつかの制限があります。
推奨される代替手段
これらの制限を克服するには、より包括的なアプローチとして CSS クラスベースの検出を使用します。
html.lt-ie9 { ... } html.lt-ie8 { ... } html.lt-ie7 { ... }
<!--[if lt IE 7]> <html class="lt-ie9 lt-ie8 lt-ie7"> <![endif]--> <!--[if IE 7]> <html class="lt-ie9 lt-ie8"> <![endif]--> <!--[if IE 8]> <html class="lt-ie9"> <![endif]--> <!--[if gt IE 8]><!--> <html> <!--<![endif]-->
if ($('html').is('.lt-ie7, .lt-ie8, .lt-ie9')) { // IE version < 9 } else { // Other browsers }
この方法では、さまざまなブラウザ バージョンを処理するための柔軟性、互換性、および制御が向上します。
以上が`navigator.appName` と `navigator.appVersion` を使用すると、古い IE バージョンを検出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。