欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

jquery 判断浏览器

shiping1 的头像

jQuery浏览器版本判断

jQuery 浏览器判断,jQuery提供了一个 jQuery.browser 方法 来判断浏览器

可用值:

safari   opera   msie   mozilla

例如:

if($.browser.msie){ alert("Microsoft Internet Explorer")}

if($.browser.mozilla){ alert("Mozilla Firefox")}

当然有时候我们还需要区分版本 这就要用到 jQuery.browser.version 

例如:

if($.browser.msie){ alert($.browser.version)}

你可能得到 6.0  7.0 或者其他 等等 

下面是一个较为完整的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="http://www.titan24.com/scripts/jquery-1.2.6.pack.js"></script> 
<style type="text/css">
*{ margin:0; padding:0;}
body{ background:#eee;}
.info{ width:600px; min-height:120px; _height:120px; line-height:120px; border:8px solid #f60; margin:40px auto; background:#fff; text-align:center; font-size:36px; font-weight:900; font-family:Arial, Helvetica, sans-serif; color:#d00;}
</style>
<script type="text/javascript">    
/* <![CDATA[ */
$(document).ready(function(){
    
var bro=$.browser;
    
var binfo="";
    
if(bro.msie) {binfo="Microsoft Internet Explorer "+bro.version;}
    
if(bro.mozilla) {binfo="Mozilla Firefox "+bro.version;}
    
if(bro.safari) {binfo="Apple Safari "+bro.version;}
    
if(bro.opera) {binfo="Opera "+bro.version;}
    alert(binfo);
    $(
"#browser").html(binfo);
})

/* ]]> */    
</script>
</head>

<body>
<div id="browser" class="info">
Browser Info
</div>
</body>
</html>

来自 http://www.cnblogs.com/trance/archive/2009/04/29/1446192.html

jquery判断浏览器是否是ie6


function isie6() {
    
if ($.browser.msie) {
        
if ($.browser.version == "6.0"return true;
    }
    
return false;
}

来自 http://www.cnblogs.com/iingstan/archive/2010/04/23/1718443.html







使用方法: 
$.browser.['浏览器关键字'] 

复制代码代码如下:

$(function() { 
if($.browser.msie) { 
alert("this is msie"); 
} 
else if($.browser.safari) 
{ 
alert("this is safari!"); 
} 
else if($.browser.mozilla) 
{ 
alert("this is mozilla!"); 
} 
else if($.browser.opera) { 
alert("this is opera"); 
} 
else { 
alert("i don't konw!"); 
} 

我们看下jQuery的源码: 


复制代码代码如下:

var userAgent = navigator.userAgent.toLowerCase(); 
// Figure out what browser is being used 
jQuery.browser = { 
version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1], 
safari: /webkit/.test( userAgent ), 
opera: /opera/.test( userAgent ), 
msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ), 
mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) 
}; 

jQuery 使用的是通过正则来匹配userAgent判断浏览器的种类和版本. 
如果我们要来判断当前浏览器是否是IE6应该如何来判断? 
$.browser.msie&&($.browser.version == "6.0")&&!$.support.style 
同样jQuery判断浏览器是否为IE7 
$.browser.msie&&($.browser.version == "7.0") 
如果不考虑向后兼容性,又不想为了判断各浏览器类型而导入jQuery 
判断IE最简单的方法是 


复制代码代码如下:

if(document.all){ 
alert("IE6") 
} 

$.browser是通过正则表达式来匹配userAgent来判断浏览器版本和种类的.jquery1.3.2版本的文档中已经声明jquery.browser及jquery.browser.version建议弃用,可以使用jquery.support来代替 
但是目前的情况来看,jquery.support并不好用,而且是非常的难用,我们还是老老实实的用$.browser来判断浏览器类型吧 
如果是为了判断IE的版本我还是推荐用IE的条件表达式来书写JS 


复制代码代码如下:

<!--[if IE]> 
<script type="text/javascript"> 
alert("ie") 
</script> 
<![endif]--> 
<!--[if IE 6]> 
<script type="text/javascript"> 
alert("ie6") 
</script> 
<![endif]--> 
<!--[if IE 7]> 
<script type="text/javascript"> 
alert("ie7") 
</script> 
<![endif]--> 


这个比我们手动通过$.browser来判断IE版本更精准,也不用去记jquery的browser的使用方法了

 

来自 http://www.jb51.net/article/26736.htm

普通分类: