JavaScript高级程序设计:第九章
第九章
一、使用能力检测
能力检测的目标不是识别特定的浏览器,而是识别浏览器的能力。能力检测的基本模式如下:
if ( object.propertyInQuestion ) {
//使用object.propertyInQuestion
}
二、怪癖检测
与能力检测类似,怪癖检测的目标是识别浏览器的特殊行为。但与能力检测确认浏览器支持什么能力不同,怪癖检测是想要知道浏览器存在什么缺陷。
三、用户代理检测
用户代理检测技术:
(1)识别呈现引擎
为了不在全局作用域中添加多余的变量,我们将使用模块增强模式来封装检测脚本。检测脚本的基本代码结构如下:
var client = function(){
var engine = {
//呈现引擎
ie:0,
gecko:0,
webkit:0,
khtml:0,
opera:0,
//具体的版本号
ver:null
};
//在此检测呈现引擎、平台和设备
return {
engine:engine
};
}();
(2)识别浏览器
(3)识别平台
(4)识别window操作平台
(5)识别移动设备
(6)识别游戏系统
二、使用方法:
用户代理检测一般用于以下情形:
(1)不能直接准确地使用能力检测或怪癖检测。
(2)同一款浏览器在不同平台下具备不同能力的时候。