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 相关文章推荐
类之Prototype.js学习
Jun 13 Javascript
优化javascript的执行效率一些方法总结
Dec 25 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
js中的json对象详细介绍
Oct 29 Javascript
Node.js学习教程之HTTP/2服务器推送【译】
Oct 31 Javascript
微信小程序实现图片上传、删除和预览功能的方法
Dec 18 Javascript
webpack v4 从dev到prd的方法
Apr 02 Javascript
全面分析JavaScript 继承
May 30 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
Aug 27 Javascript
微信小程序 wx:for遍历循环使用实例解析
Sep 09 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
Sep 12 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
Feb 11 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 Ubb代码编辑器函数代码
2012/07/05 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
php中实现记住密码下次自动登录的例子
2014/11/06 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
JavaScript中获取元素索引的函数
2010/09/10 Javascript
关于JavaScript定义类和对象的几种方式
2010/11/09 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
2011/07/13 Javascript
jQuery遍历之next()、nextAll()方法使用实例
2014/11/08 Javascript
jQuery中:animated选择器用法实例
2014/12/29 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
JS选项卡动态替换banner图片路径的方法
2015/05/11 Javascript
JQuery复制DOM节点的方法
2015/06/11 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
2015/08/11 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
JavaScript正则表达式替换字符串中图片地址(img src)的方法
2017/01/13 Javascript
Bootstrap Table从零开始
2017/06/30 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
vue swipe自定义组件实现轮播效果
2019/07/03 Javascript
[36:33]Ti4 循环赛第四日 附加赛NEWBEE vs Mouz
2014/07/13 DOTA
Python实现的数据结构与算法之双端队列详解
2015/04/22 Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
2018/01/16 Python
Tensorflow 合并通道及加载子模型的方法
2018/07/26 Python
为什么Python中没有&quot;a++&quot;这种写法
2018/11/27 Python
python 删除字符串中连续多个空格并保留一个的方法
2018/12/22 Python
几行Python代码爬取3000+上市公司的信息
2019/01/24 Python
python并发爬虫实用工具tomorrow实用解析
2019/09/25 Python
详解Django3中直接添加Websockets方式
2020/02/12 Python
Jupyter notebook无法导入第三方模块的解决方式
2020/04/15 Python
Origins悦木之源英国官网:雅诗兰黛集团高端植物护肤品牌
2017/11/06 全球购物
乡镇交通安全实施方案
2014/03/29 职场文书
合作意向书模板
2014/03/31 职场文书
公司贷款承诺书
2014/05/30 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
详解JSON.parse和JSON.stringify用法
2022/02/18 Javascript