ホームページ  >  記事  >  ウェブフロントエンド  >  jquery uaMatch ソース コード_jquery

jquery uaMatch ソース コード_jquery

WBOY
WBOYオリジナル
2016-05-16 18:10:531509ブラウズ
复制代码代码如下:

// Useragent RegExp
rwebkit = /(webkit)[ / ]([w.] )/,
ropera = /(opera)(?:.*version)?[ /]([w.] )/,
rmsie = /(msie) ([w. ] )/,
rmozilla = /(mozilla)(?:.*? rv:([w.] ))?/,
// jQuery.browser で使用する UserAgent 文字列を保持します
userAgent = navigator.userAgent,

// ブラウザのエンジンとバージョンを一致させるため
browserMatch,

// jQuery.browser の使用は嫌われます。
// 詳細: http://docs.jquery.com/Utilities/jQuery.browser
uaMatch: function( ua ) {
ua = ua.toLowerCase();

var match = rwebkit.exec( ua ) ||
ropera.exec( ua ) ||
rmsie.exec( ua ) ||
ua.indexOf("互換性") < 0 && rmozilla.exec( ua ) ||
[];

return { ブラウザ: match[1] || ""、バージョン: match[2] || "0" };
}
browserMatch = jQuery.uaMatch( userAgent );
if (browserMatch.browser ) {
jQuery.browser[browserMatch.browser ] = true;
jQuery.browser.version = browserMatch.version;
}

分析: プレイヤー間の互換性の問題、これは重大な問題です。フロントエンド開発者としてこの互換性の問題を解決するのは困難です。做开出版このとき、各ブラウザが局所的なコード調整を行うと、対応するブラウザ内でうまく動作しません。この関数は uaMatch() を使用するだけです。使用する関連ポイントは次のとおりです。1.regExp.exec(str); 2.navigator.userAgent;
一、regExp.exec(str); 正表表式来在文字列中查找,一数組を返還する,この数組の 0 要素は完全な正一致,1 元素は第一子一致,2 元素は
2 番目の navigator.userAgent: JavaScript BOM の重要なオブジェクトの 1 つであり、主に現在のブラウザーとオペレーティング システムの情報を返すために使用されます。
例: firefox の navigator .userAgetn の文字列:"Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13"
IE8のnavigator.userAgetnの文字列: 「Mozilla/4.0 (互換性; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)」。
各ブラウザの正確な表示形式は、最初の子がエミュレータの名前、2 番目がバージョンに対応していることがわかります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。