如何判断浏览器 ie6 ie7 ff opera
有时候见到htm文件里面有
<!--[if IE 6]>
...
<![endif]-->
这样的的片段
请问有没有全部的其他条件语句资料?
还有,有没有js插件用来判断当前浏览器的版本?也可以是jquery插件。
------解决方案--------------------
B = (function(ua){
var b = {
msie: /msie/.test(ua) && !/opera/.test(ua),
opera: /opera/.test(ua),
safari: /webkit/.test(ua) && !/chrome/.test(ua),
firefox: /firefox/.test(ua),
chrome: /chrome/.test(ua)
};
var vMark = "";
for (var i in b) {
if (b[i]) { vMark = "safari" == i ? "version" : i; break; }
}
b.version = vMark && RegExp("(?:" + vMark + ")[\\/: ]([\\d.]+)").test(ua) ? RegExp.$1 : "0";
b.ie = b.msie;
b.ie6 = b.msie && parseInt(b.version, 10) == 6;
b.ie7 = b.msie && parseInt(b.version, 10) == 7;
b.ie8 = b.msie && parseInt(b.version, 10) == 8;
return b;
})(window.navigator.userAgent.toLowerCase());
具体可以看这里
------解决方案--------------------
- JScript code
function detectBrower() { var sUserAgent = navigator.userAgent; var isOpera = sUserAgent.indexOf("Opera") > -1; if(isOpera) return "Opera"; var isKHTML = sUserAgent.indexOf("KHTML") > -1 || sUserAgent.indexOf("Konqueror") > -1 || sUserAgent.indexOf("AppleWebKit") > -1; var isSafari = sUserAgent.indexOf("AppleWebKit") > -1 && isKHTML; var isKonq = sUserAgent.indexOf("Konqueror") > -1 && isKHTML; if(isSafari) return "Safari"; if(isKonq) return "Konqueror"; var isIE = sUserAgent.indexOf("compatible") > -1 && sUserAgent.indexOf("MSIE") > -1 && !isOpera; if(isIE) return "IE"; var isMoz = sUserAgent.indexOf("Gecko") > -1 && !isKHTML; if(isMoz) return "Mozilla"; return "None"; }
------解决方案--------------------
基本上,流行的js框架里都有类似的代码,下几个看看就知道了
一般有两种方法,一是用userAgent判断,二是使用浏览器/版本所特有的对象、属性、方法等来判断