DIV CSS 佈局教程網

jquery uaMatch源代碼
編輯:JQuery特效代碼     
代碼如下:
// Useragent RegExp
rwebkit = /(webkit)[ \/]([\w.]+)/,
ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/,
rmsie = /(msie) ([\w.]+)/,
rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,
// Keep a UserAgent string for use with jQuery.browser
userAgent = navigator.userAgent,

// For matching the engine and version of the browser
browserMatch,

// Use of jQuery.browser is frowned upon.
// More details: 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("compatible") < 0 && rmozilla.exec( ua ) ||
[];

return { browser: match[1] || "", version: match[2] || "0" };
}
browserMatch = jQuery.uaMatch( userAgent );
if ( browserMatch.browser ) {
jQuery.browser[ browserMatch.browser ] = true;
jQuery.browser.version = browserMatch.version;
}

分析:浏覽器之間的兼容性問題,這個一個歷史遺留問題。痛苦的是,作為一個前端開發人員得為這個兼容性問題買單。我們做開發時,往往要為每種浏覽器作出局部的代碼調整才能在相應的浏覽器中良好的運行。我所知道的方法有兩種:1.浏覽器檢測;2.對象檢測。
  在jQuery 中只要用行uaMatch()這個函數。用到的關鍵點有:1.regExp.exec(str);2.navigator.userAgent;
  一,regExp.exec(str);用正則表達式來在字符串中查找,並返回一個數組,這個數組的0元素是整個正則匹配,1元素是第一個子匹配,2元素是第二個子匹配,如此類推。
  二,navigator.userAgent:是javascript BOM的重要的對象之一,它主要用來返回當前的浏覽器和操作系統的信息。
    例如: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 (compatible; 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)".
    從各個浏覽器的正則表達式可知,第一個子匹配為浏覽器的名字,第二個為版本。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved