读书人

怎么用javascript判断用的是什么浏览器

发布时间: 2014-01-05 18:22:55 作者: rapoo

如何用javascript判断用的是什么浏览器!
如题,这个问题已经困扰我好长时间了,一直找不到好的解决办法。具体问题是这样的:该功能主要是实现用脚本语言判断是否用的是ie浏览器,如果不是则一律过滤掉,只有ie才可以登录。但是问题是,我发现国内有好多浏览器用的都是ie内核,比如360浏览器,这样的话用一般的方法根本无法检测出来是否是ie。因此谁能有好的解决方案,不要盲目复制百度,百度上的方法我基本都试过了。最好是你曾经用过或者测试过的靠谱的。
现在项目催的急,lz在此坐等大神出现。说的好给分!
急急急!
[解决办法]
刚才试了下,用IE核心大部分浏览器navigator包含的信息和IE的一模一样(世界之窗会加上他的名称),没搞头。。用IE核心的还不是一样。。干嘛非得限制
[解决办法]

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="ctl00_Head1">
<title>关于对幽默搞笑类内容型微博的调查问卷</title>
<script type="text/javascript">
function getOs()
{
var OsObject = "";
if(navigator.userAgent.indexOf("MSIE")>0) {
return "MSIE";
}
if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
return "Firefox";
}
if(isSafari=navigator.userAgent.indexOf("Safari")>0) {
return "Safari";
}
if(isCamino=navigator.userAgent.indexOf("Camino")>0){
return "Camino";
}
if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){
return "Gecko";
}

}
alert("您的浏览器类型为:"+getOs());
</script>
</head>

<body>
<input type="button" onclick="getOs();"></input>


</body>
</html>

[解决办法]
今天也做了个类似的判断

// 6、判断浏览器内核
$.ua().isWebkit;
$.ua().isGecko;
$.ua().isTrident;

// 7、判断浏览器外壳
// 判断是否为原版chrome浏览器
$.ua().isChrome;

// 判断是否为360极速浏览器
$.ua().is360ee;

// 判断是否为360安全浏览器chrome内核
$.ua().is360se;

// 判断是否为猎豹浏览器
$.ua().isLiebao;

// 判断是否为ie内核浏览器
$.ua().isIe;

// 判断ie内核浏览器版本
$.ua().ie;
// =>6/7/8/9/10/11,0

给你链接
http://qianduanblog.com/2599.html
http://static.qianduanblog.com/js/jquery.ua/
[解决办法]
感觉#1说的对 能实现你要求的浏览器干嘛非得拒绝掉
[解决办法]
教你一个投机取巧的办法,我试过了,可以成功!

你写两个判断,
第一个:navigator.appName是否为Microsoft Internet Explorer,
过滤出IE和ie内核的浏览器;
第二个:通过检索navigator.appVersion中的内容,
一般它都带有该浏览器的名称,从而过滤出ie浏览器。


[解决办法]
不如基于功能检测,你有什么功能只在IE下使用,别的浏览器不支持的话,就只检测这个功能是否存在就好。应当是你有activex只能在IE下用,要不没有理由禁止别的浏览器,倒过来做不支持IE6感觉目前比较流行。
[解决办法]
引用:
Quote: 引用:

教你一个投机取巧的办法,我试过了,可以成功!

你写两个判断,
第一个:navigator.appName是否为Microsoft Internet Explorer,
过滤出IE和ie内核的浏览器;
第二个:通过检索navigator.appVersion中的内容,
一般它都带有该浏览器的名称,从而过滤出ie浏览器。


你这个判断其他的好使,还是判断不出ie和360,ie和360输出信息完全一样
可以判断啊,上面第二个判断就是,为了解决这个问题。

读书人网 >JavaScript

热点推荐