第九章 客戶端檢測

1.不到萬不得已,就不要使用客戶端檢測


2.客戶端檢測的方式(按照使用優(yōu)先級):

①能力檢測:在編寫代碼之前先檢測特定瀏覽器的能力(而不是識別特定的瀏覽器)

②怪癖檢測:怪癖實際上是瀏覽器實現中存在的bug。怪癖檢測的目的是識別瀏覽器的特殊行為。

③用戶代理檢測:通過檢測用戶代理字符串來識別瀏覽器(識別呈現引擎、識別瀏覽器、識別平臺、識別Windows操作系統(tǒng)、識別移動設備、識別游戲系統(tǒng))


3.能力檢測兩個重要的概念:

①先檢測達成目的的最常用的特性

②必須測試實際要用到的特性


4.在瀏覽器環(huán)境下測試任何對象的某個特性是否存在:

function isHostMethod ( object , property ){

? ? var t = typeof object[property] ;

? ? return t == 'function' || ( !! ( t == 'object' && object[property] )) || t == 'unknown' ;

}


5.用戶代理檢測識別呈現引擎檢測順序:

①識別Opera

Opera 5及更高版本都有window . opera對象;

Opera 7.6及更高版本調用version() 方法可以返回一個代表瀏覽器版本的字符串。

②識別WebKit

Mozilla/5.0 (平臺; 加密類型; 操作系統(tǒng)或CPU; 語言) AppleWebKit/AppleWebKit 版本號 (KHTML, like Gecko) Safari/Safari 版本號

③識別KHTML

Konqueror 3.1及之前版本:Mozilla/5.0 (compatible; Konqueror/版本號; 操作系統(tǒng)或CPU);

Konqueror 3.2及之后版本:Mozilla/5.0 (compatible; Konqueror/版本號; 操作系統(tǒng)或CPU) KHTML/KHTML 版本號 (like Gecko)

④識別Gecko

Mozilla/Mozilla 版本號 (平臺; 加密類型; 操作系統(tǒng)或CPU; 語言; 預先發(fā)行版本) Gecko/Gecko 版本號 應用程序或產品/應用程序或產品版本號

⑤識別IE

IE 4-IE 7:Mozilla/4.0 (conpatible; MSIE 版本號; 操作系統(tǒng));

IE? 8-IE 9:Mozilla/Mozilla 版本號 (conpatible; MSIE 版本號; 操作系統(tǒng); Trident/Trident 版本號);


6.用戶代理檢測的適用情形:

①不能直接準確地使用能力檢測或怪癖檢測

②同一款瀏覽器在不同平臺下具備不同的能力

③為了跟蹤分析等目的需要知道確切的瀏覽器

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容