是否可以检测完整版的Internet Explorer。
navigator.appVersion
navigator.appVersion仅提供主要版本,例如9.0 但它没有显示9.0.8112.1642 ...
答案 0 :(得分:4)
很遗憾,您无法访问JavaScript中的IE内部版本号。
答案 1 :(得分:1)
下面有一个解决方案,但只适用于32位版本的Windows: http://www.pinlady.net/PluginDetect/IE/
var e, obj = document.createElement("div"),
verIEfull = null; // Full IE version [string/null]
try{
obj.style.behavior = "url(#default#clientcaps)";
verIEfull = obj.getComponentVersion("{89820200-ECBD-11CF-8B85-00AA005B4383}","componentid").replace(/,/g,".");
}catch(e){};
答案 2 :(得分:0)
来自microsoft development website
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
var rv = -1; // Return value assumes failure.
if (navigator.appName == 'Microsoft Internet Explorer')
{
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat( RegExp.$1 );
}
return rv;
}
答案 3 :(得分:0)
navigator.userAgent;
Mozilla / 4.0(兼容; MSIE 8.0; Windows NT 5.1; Trident / 4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath。 2)
一种可能性是将.NET版本与IE次要版本进行比较,如果我们在microsoft IE文档上找到该表的那个。
答案 4 :(得分:0)
我会这样做:
var IEVersion = 0;
if( window.attachEvent && /MSIE ([\d\.]+)/.exec(navigator.appVersion) ){
IEVersion = parseInt( RegExp.$1 );
}
它是紧凑的,通过检查事件模型实际上是IE首先闪避欺骗的UserAgent字符串: