如前所述,您可以浏览“导航器”对象属性,然后正确解析您感兴趣的属性(例如:“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 尝试/捕获
编辑:
如果您想显示特定的应用程序名称和版本,请查看这个很棒的 SO 答案。有了这个,最终的代码将是:
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]
}