1.最常用也是最为人们广泛接受的客户端检测形式是能力检测(又称特性检测)。能力检测的目标不是识别特定的浏览器,而是识别浏览器的能力。能力检测的基本模式如下:
if (object.propertyInQuestion) {
//使用object.propertyInQuestion
}
使用能力检测有两个需要注意的地方,一是先检测达成目的的最常用的特性。第二是必须测试实际要用到的特性(而不是想当然地用关联特性测试)。
2.更可靠(使用typeof)的能力检测:
function isHostMethod(object,property){
var t=typeof object[property];
return t=='function' || (!!(t=='object')&&object[property]) || t=='unknown';
}
3.实际上,根据浏览器不同将能力组合起来是更可取的方式。如果你知道自己的应用程序需要使用某些特定的浏览器特性,那么最好是一次性检测所有相关特性。
4.navigator对象的userAgent属性保存着客户端的相关信息。