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


Posted in Javascript onApril 05, 2011

使用方法:
$.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的使用方法了
Javascript 相关文章推荐
JS 控制CSS样式表
Aug 20 Javascript
jQuery扁平化风格下拉框美化插件FancySelect使用指南
Feb 10 Javascript
javascript实现捕捉键盘上按下的键
May 05 Javascript
Javascript中的getUTCHours()方法使用详解
Jun 10 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
Dec 01 Javascript
react native实现往服务器上传网络图片的实例
Aug 07 Javascript
JavaScript设计模式之责任链模式实例分析
Jan 16 Javascript
微信小程序 slot踩坑的解决
Apr 01 Javascript
vue 插件的方法代码详解
Jun 06 Javascript
js实现秒表计时器
Dec 16 Javascript
如何在vue项目中嵌入jsp页面的方法(2种)
Feb 06 Javascript
原生js拖拽实现图形伸缩效果
Feb 10 Javascript
Jquery判断IE6等浏览器的代码
Apr 05 #Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
Apr 05 #Javascript
JQuery中$之选择器用法介绍
Apr 05 #Javascript
关于window.pageYOffset和document.documentElement.scrollTop
Apr 05 #Javascript
Javascript 自适应高度的Tab选项卡
Apr 05 #Javascript
Ajax 数据请求的简单分析
Apr 05 #Javascript
jQuery1.5.1 animate方法源码阅读
Apr 05 #Javascript
You might like
PHP开发不能违背的安全规则 过滤用户输入
2011/05/01 PHP
session在PHP大型web应用中的使用
2011/06/25 PHP
PHP url 加密解密函数代码
2011/08/26 PHP
zend framework配置操作数据库实例分析
2012/12/06 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
javascript 24小时弹出一次的代码(利用cookies)
2009/09/03 Javascript
javascript错误的认识不用关心内存管理
2012/12/15 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
Iframe实现跨浏览器自适应高度解决方法
2014/09/02 Javascript
分享一个自己写的简单的javascript分页组件
2015/02/15 Javascript
深入理解JavaScript系列(28):设计模式之工厂模式详解
2015/03/03 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
基于jquery实现ajax无刷新评论
2020/08/19 Javascript
jQuery元素属性操作实例(设置、获取及删除元素属性)
2016/09/08 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
详解Node.js amqplib 连接 Rabbit MQ最佳实践
2019/01/24 Javascript
解决一个微信号同时支持多个环境网页授权问题
2019/08/07 Javascript
详解ECMAScript2019/ES10新属性
2019/12/06 Javascript
python中字典dict常用操作方法实例总结
2015/04/04 Python
Python的净值数据接口调用示例分享
2016/03/15 Python
TensorFlow平台下Python实现神经网络
2018/03/10 Python
Python文本处理之按行处理大文件的方法
2018/04/09 Python
pytorch中图像的数据格式实例
2020/02/11 Python
解决Pyinstaller打包软件失败的一个坑
2021/03/04 Python
html5 Canvas画图教程(1)—画图的基本常识
2013/01/09 HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
5 个强大的HTML5 API 函数推荐
2014/11/19 HTML / CSS
出口公司经理求职简历中的自我评价
2013/10/13 职场文书
优秀毕业生推荐信
2013/11/02 职场文书
毕业生就业推荐信范文
2013/12/01 职场文书
财务部出纳岗位职责
2013/12/22 职场文书
工商企业管理专业自荐信范文
2014/04/12 职场文书
校园演讲稿汇总
2014/05/21 职场文书
篮球赛口号
2014/06/18 职场文书
四风问题个人对照检查材料
2014/09/26 职场文书