我们在编程过程中经常要进行兼容处理,因为有些版本的浏览器并不支持某些特性或者方法,所以只能在前端页面程序中写下判断浏览器版本的代码,对浏览器版本进行判断,从而在程序中写下不同分支
下面以实际为例提供一个判断是否是低版本IE8(及以下)的方法
//是否是低版本浏览器 IE8及以下
function IFdLowerIE() {
try {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var IFOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
var IFIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
var IFFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
var IFSafari = userAgent.indexOf("Safari") > -1; //判断是否Safari浏览器
if (IFIE) {//如果是IE浏览器 获取具体的版本
var IE5 = IE55 = IE6 = IE7 = IE8 = false;
var CurIEVer = new RegExp("MSIE (\\d+\\.\\d+);");
CurIEVer.test(userAgent);
var IEVer = parseFloat(RegExp["$1"]);
IE55 = IEVer == 5.5;
IE6 = IEVer == 6.0;
IE7 = IEVer == 7.0;
IE8 = IEVer == 8.0;
if (IE55 || IE6 || IE7 || IE8) {//如果是IE8及以下 就处理浏览器返回true 进行某些特殊处理
return true;
}
}
return false;
}
catch (e) {
return false;
}
}