首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

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

2014-01-05 
如何用javascript判断用的是什么浏览器!如题,这个问题已经困扰我好长时间了,一直找不到好的解决办法。具体

如何用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输出信息完全一样
可以判断啊,上面第二个判断就是,为了解决这个问题。

热点排行