ナビゲーターオブジェクトには、ブラウザに関する情報が含まれています。
•AppCodename-ブラウザコード名の文字列表現
•AppName-公式ブラウザ名の文字列表現
•Appversion -Browserバージョン情報の文字列表現
•CookieEnabled-クッキーが有効になっている場合はtrueを返し、それ以外の場合はfalseを返します
•javaEnabled- javaが有効になっている場合はtrueを返し、それ以外の場合はfalseを返します
•プラットフォーム - ブラウザが配置されているコンピュータープラットフォームの文字列表現
•プラグイン - ブラウザにインストールされているプラグインの配列
•Taintenabled-データ染色が有効になっている場合はtrueを返し、それ以外の場合はfalseを返します
•useragent-ユーザーエージェントヘッダーの文字列表現
Navigatorで最も重要なことは、ブラウザバージョンなどの情報を含む文字列を返すユーザーエージェント属性です。
CookieEnabledも重要です。それを使用して、ユーザーのブラウザが有効になっているかどうかを判断します。
一般に、JavaScriptでブラウザタイプを判断する2つの方法があります。 1つは、さまざまなブラウザの一意の属性に基づいてそれらを区別することであり、もう1つはブラウザのユーザーエイジェント属性を分析することにより判断することです(バージョンはUserAgentを分析することによってのみ取得できます)。
互換性の問題は、ブラウザタイプとブラウザの両方のバージョンが決定された後にのみ処理できます。
1.ユーザーエージェントの特性を使用して、ブラウザの種類とバージョンを決定します(一般的に使用される、保険慣行)
関数getBrowserInfo(){var sys = {}; var ua = navigator.useragent.tolowercase(); var s; (s = ua.match(/msie([/d.]+))? sys.ie = s [1] :( s = ua.match(/firefox //([/d。]+)/))? sys.firefox = s [1] :( s = ua.match(/chrome //([/d。]+)/))? sys.opera = s [1] :( s = ua.match(/opera。([/d。]+)/))? sys.opera = s [1] :( s = ua.match(/version //([/d。]+)。*safari/))? sys.safari = s [1]:0; if(sys.ie){return 'ie:' + sys.ie; } if(sys.firefox){return 'firefox:' + sys.firefox; } if(sys.chrome){return 'chrome:' + sys.chrome; } if(sys.opera){return 'opera:' + sys.opera; } if(sys.safari){return 'safari:' + sys.safari; }} var browser = getBrowserInfo(); var verinfo =(browser+"")。置換(/[^0-9。]/ig、 ""); //バージョン番号注:ChromeのユーザーエージェントにはSafariの特性も含まれているため、ChromeとSafariは一部のブラウザのユーザーエージェント属性値で利用できます。これは、ChromeがSafariブラウザーアプリケーションを実行する基礎となる可能性があります。
2。各ブラウザの一意の機能を介してブラウザを区別します(注:これらの機能はブラウザバージョンで変更される場合があります。また、他のブラウザもこの機能を追加して、判断の失敗になります)
IE:IEのみがActiveXコントロールの作成をサポートするため、ActiveXObject関数は他のブラウザーでは使用できません。ウィンドウオブジェクトにActiveXObject関数があることを判断してください。現在のブラウザがIEであることは明らかです。
Firefox:FFのDOM要素には、DOM要素の位置とサイズを取得するためのgetboxObjectfor関数があります。これはFirefoxに固有のものです。現在のブラウザはFirefoxであることがわかります。 (IEに対応するGetBoundingClientRect関数)
Opera:Operaは、特別なブラウザロゴ-Window.operaプロパティを提供しています。
Safari:Opendatabase関数は他のブラウザでは使用できず、Safari判事のサインとして使用できます。
CHROME:FFと同様に、MessageEvent関数がありますが、ChromeにはFFのgetboxObjectfor機能がありません。これらの2つの条件に基づいて、Chromeブラウザーを判断できます。
var sys = {}; var ua = navigator.useragent.tolowercase(); if(window.activexobject){sys.ie = ua.match(/msie([/d.]+)/))} else if(document.getboxobjectfor){sys.firefox = ua.match(/firefox/) if(window.messageevent &&!document.getboxObjectfor){sys.chrome = ua.match(/chrome([/d。]+)/)[1]} else if(sys.opera){sys.opera = ua.match(/opera。([/d ua.match(/version //([/d。]+)/)[1];}レベルは限られており、記事の不適切な間違いは避けられません。批判、修正、提案、コメントは大歓迎です。この記事は、時々改訂および改善されます。ありがとう!
上記の記事JSのブラウザバージョン情報を取得および判断する簡単な方法は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。