![ContractedBlock.gif](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![ExpandedBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
在AJAX开发中,经常使用对象、特征检测法进行浏览器性能检测,进而防止功能缺失,降低客户体验丰富度等现象的出象。
javaScript判断浏览器性能有两种方式,对象、特征检测法和user-agent字符串检测两种方法。
对象/特征检测法并不能准确获得浏览器型号,但是专家都认为它简单易用。
下面通过列举两种方法的使用。
一、对象特征检测法
if (document.eval) //检测对象是否存在
{
//使用document.eval 方法实现功能
}
else
{
}
重点在于使用一个对象或者对象方法、性性前,首先检测该对象或该对象方法、性性是否存在。
注意:检测对象方法或对象方法是否存在时不能出现括号,如果出象了括号,解析器就会调用该方法,如果方法不存在就会产生错误。
二、user-agent 字符串检测法
//Mozilla内核
function checkBrowser()
{
if (parseFloat(widows.navigator.appVersion) >= 4.0)
{
//可以使用Mozilla 4.0 浏览器版本功能
}
else if(parseFloat(widows.navigator.appVersion) >= 3.0)
{
////可以使用Mozilla 3.0 浏览器版本功能
}
}
//IE
function checkBrowserVersion()
{
//检测是否是IE
if (widows.navigator.userAgent.indexOf("MSIE") >-1)
{
if (window.navigator.userAgent.indexOf("MSIE 5.") > -1)
{
//使用IE 5.0 功能
}
else if(window.navigator.userAgent.indexOf("MSIE 6.") > -1)
{
//使用IE 6.0 功能
}
}
//检测Firefox版本号
else if(parseFloat(widows.vavigator.appVersion) >= 3.0)
{
//可以使用Mozilla 3.0 浏览器版本功能
}
}