jQuery下通过$.browser来判断浏览器

使用方法: 
$.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的使用方法了

时间: 2024-10-29 21:26:01

jQuery下通过$.browser来判断浏览器的相关文章

【用jQuery来判断浏览器的类型】及【javascript获取用户ip地址】

用jQuery来判断浏览器的类型,主要是使用$.browser这个工具类,使用方法: $.browser.['浏览器关键字'] //谷歌浏览器.360浏览器等其他一些浏览器,没有专门的判断 function appInfo() { var bro = $.browser; var binfo = ""; if (bro.msie) { binfo = "Microsoft Internet Explorer " + bro.version; // bro.versi

如何利用jquery.1.9版本判断浏览器的版本类型

如何利用jquery.1.9版本判断浏览器的版本类型:在jquery.1.9以前的版本,可以使用$.browser很轻松的判断浏览器的类型和版本,但是在1.9中和以后的版本中,$.browser已经被删除,下面就介绍一下如何实现此功能,希望能够给需要的朋友带来帮助.一.自定义代码: $.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase()); $.browser.webkit = /webkit/.test(navi

JavaScript大杂烩15 - 使用JQuery(下)

前面我们总结了使用各种selector拿到了jQuery对象了,下面就是对这个对象执行指定的行为了. 2. 操作对象 - 行为函数action 执行jQuery内置的行为函数的时候,JQuery自动遍历jQuery对象中包装的所有对象,依次在这些对象上执行指定的行为,直白的说,就是JQuery执行的是批量的操作,所以在JQuery中,默认情况下,是不需要强行的遍历包装对象,然后独自的执行指定的行为的.下面是常用的行为函数介绍. 1). 遍历jQuery对象 虽然执行jQuery内置的方法的时候不

jQuery下拉友情链接美化效果代码分享

这篇文章主要介绍了jQuery下拉友情链接美化效果,很实用的代码,推荐给大家,有需要的小伙伴可以参考下. 文实例讲述了jQuery下拉友情链接美化效果,jQuery下拉友情链接美化代码是一款基于jQuery实现的下拉美化特效,分享给大家供大家参考.具体如下:运行效果图: 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式.为大家分享的jQuery下拉友情链接美化效果代码如下 <head> <meta http-equiv="Content-Type" conten

jquery中的scrollTop控制浏览器的滚动条

jQuery获取的相关方法 jquery 获取滚动条高度 获取浏览器显示区域的高度 : $(window).height(); 获取浏览器显示区域的宽度 : $(window).width(); 获取页面的文档高度 :$(document).height(); 获取页面的文档宽度 :$(document).width(); 获取滚动条到顶部的垂直高度 : $(document).scrollTop(); 获取滚动条到左边的垂直宽度 : $(document).scrollLeft(); 计算元素

ubuntu系统下selenium打开火狐浏览器提示&#39;Unable to find a matching set of capabilities.解决方法

环境: 1.ubuntu系统 2.selenium 3.141.0 3.火狐浏览器驱动 geckodriver-v0.24.0-linux32 在Python中执行脚本: from selenium import webdriverbrowser = webdriver.Firefox() 结果提示:Message: Unable to find a matching set of capabilities Traceback (most recent call last):  File "/h

可控制导航下拉方向的jQuery下拉菜单代码

效果:http://hovertree.com/texiao/nav/1/ 代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>可控制导航下拉方向的jQuery下拉菜单代码 - 何问起</title> <base ta

JQuery 下拉框左右移动

JQuery下拉框左右移动 触发点击按钮时间 然后通过$("#one option:selected")获取目标的下拉框所选中的值  然后把选中的添加到你所要的下拉框中 同时要把原来下拉框的值删除  代码可以一句搞定 $("#one option:selected").appendTo("#two") 要注意的是: append()与appendTo()方法的区别. append(content|fn)向每个匹配的元素内部追加内容. append

Ubuntu 14.04 LTS下安装Google Chrome浏览器

在Ubuntu 14.04下安装Google Chrome浏览器非常简单,只要到Chrome的网站下载Deb安装包并进行安装即可.当然你也可以使用APT软件包管理器来安装Google Chrome浏览器,如果你想使用APT软件包管理器安装Google Chrome浏览器的话,本文将介绍这两种方法. 目前Linux下的Google Chrome浏览器有三个版本,稳定版.Beta(测试版)和Unstable(不稳定版,也就是Dev版).其中Beta相对较稳定,而最新的功能将会先出现在Unstable