显示计算机浏览器

问题描述:

我使用下面显示的JavaScript代码来显示我的计算机浏览器为“Firefox 19.0”。显示计算机浏览器

<script language="javascript" type="text/javascript"> 
function detect() 
{ 
document.getElementById("bCodeName").innerHTML = navigator.appCodeName; 
} 
</script> 
<div id="bCodeName"></div> 
<body onload="detect();"></body> 

但这代码只是显示:

Mozilla 

我不知道如何继续下去。

请帮忙。提前致谢。

+0

打开一个'console'(Firebug或Chrome控制台)并在立即数jor命令行输入'Navigator'。 – 2013-03-23 09:49:53

+0

为什么这个问题被降低了? – imulsion 2013-03-23 09:50:52

+2

@imulsion。我没有倒退,但我必须说它显示出很少的研究努力。如果一个属性没有完全返回你想要的,你应该能够查找同一个对象的其他属性。 – GolezTrol 2013-03-23 09:53:05

如前所述,您可以浏览“导航器”对象属性,然后正确解析对您有意思的内容(例如:“appCodeName”,“appVersion”和无所不在的“userAgent”)。

两个这样做可能方式:

function detect() 
{ 
    document.getElementById("bCodeName").innerHTML = navigator.appCodeName + " " + navigator.appVersion.split(" ")[0]; 
} 

或短一点:

function detect() 
{ 
    document.getElementById("bCodeName").innerHTML = navigator.userAgent.split(" ")[0].replace("/", " "); 
} 

你可以做的很好处理异常,如果有一些错误,而这个分析数据。见Javascript Try/Catch

编辑:

如果你想显示具体的应用程序名称和版本,看看到this great SO answer。有了这个,最终的代码是:

function detect() 
{ 
    var N= navigator.appName, ua= navigator.userAgent, tem; 
    var M= ua.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i); 
    if(M && (tem= ua.match(/version\/([\.\d]+)/i))!= null) M[2]= tem[1]; 
    M = M? [M[1], M[2]]: [N, navigator.appVersion, '-?']; 
    document.getElementById("bCodeName").innerHTML = M[0] + " " + M[1] 
} 
+0

嗨谢尔...谢谢你,但它显示Mozilla 5.0,但我需要Firefox 5.0。如何继续这样做? – user2201935 2013-03-23 11:03:55

+0

答案刚刚更新,您正在寻找的输出。玩这个,看看这是你在找什么。顺便说一句,我认为“detect()”返回版本并将其插入到HTML外部会更好 - 这将使您的代码在未来更加可用。 – Kiddo 2013-03-23 11:34:17

改为使用navigator.appName。我不知道,如果返回正确的名称(它返回“Netscape的浏览器中,由于某种原因。navigator也有some other propertiesappVersion,您可以使用。

正如Browser detection in JavaScript?

回答 肯纳贝克
navigator.sayswho= (function(){ 
    var N= navigator.appName, ua= navigator.userAgent, tem; 
    var M= ua.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i); 
    if(M && (tem= ua.match(/version\/([\.\d]+)/i))!= null) M[2]= tem[1]; 
    M= M? [M[1], M[2]]: [N, navigator.appVersion,'-?']; 
    return M; 
})(); 

您也可以使用navigator.userAgent

下面是一个完整的文档:

http://www.w3schools.com/jsref/prop_nav_useragent.asp