jquery判断浏览器类型的代码


Posted in Javascript onNovember 05, 2012

Jquery中利用navigator.userAgent.indexOf来判断浏览器类型,并进行了一下处理,建议学习Jquery的朋友学习下,了解一下思路。

主要使用的方法:$.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判断浏览器的种类和版本.
version---浏览器版本
msie----ie浏览器(Microsoft Internet Explorer)
mozilla-火狐浏览器
opera--opera浏览器

如果我们要来判断当前浏览器是否是IE6应该如何来判断?

if($.browser.msie&&($.browser.version == "6.0")&&!$.support.style){ 
alert("ie6"); 
}

同样Jquery判断浏览器是否为IE7
if($.browser.msie&&($.browser.version == "7.0")){ 
alert("ie7"); 
}

如果不想使用Jquery,稍为修改下代码就可以为自己所用Js代码:
var userAgent = navigator.userAgent.toLowerCase(); 
browser={ 
version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [0,'0'])[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一样,只不过把$符号取掉就行了

如果是为了判断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 小贴士一星期合集
Apr 07 Javascript
jQuery实现表头固定效果的实例代码
May 24 Javascript
写得不错的jquery table鼠标经过变色代码
Sep 27 Javascript
jQuery插件jRumble实现网页元素抖动
Jun 05 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
Aug 28 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 Javascript
js多个物体运动功能实例分析
Dec 20 Javascript
vue实现登陆登出的实现示例
Sep 15 Javascript
jquery select插件异步实时搜索实例代码
Oct 20 jQuery
JavaScript实现页面中录音功能的方法
Jun 04 Javascript
Vue动态面包屑功能的实现方法
Jul 01 Javascript
基于JS实现父组件的请求服务过程解析
Oct 14 Javascript
js实现翻页后保持checkbox选中状态的实现方法
Nov 03 #Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
Nov 01 #Javascript
js限制textarea每行输入字符串长度的代码
Oct 31 #Javascript
JS TextArea字符串长度限制代码集合
Oct 31 #Javascript
JS 控件事件小结
Oct 31 #Javascript
jQuery事件 delegate()使用方法介绍
Oct 30 #Javascript
fancybox modal的完美解决(右上的X)
Oct 30 #Javascript
You might like
php中通过curl smtp发送邮件
2012/06/05 PHP
实例讲解php实现多线程
2019/01/27 PHP
跟我一起学写jQuery插件开发方法(附完整实例及下载)
2010/04/01 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
JavaScript中的onerror事件概述及使用
2013/04/01 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
jquery的attr方法禁用表单元素禁用输入内容
2014/06/23 Javascript
jQuery-1.9.1源码分析系列(十一)DOM操作续之克隆节点
2015/12/01 Javascript
js中获取 table节点各tr及td的内容简单实例
2016/10/14 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
Vue实现移动端左右滑动效果的方法
2018/11/27 Javascript
新年快乐! javascript实现超级炫酷的3D烟花特效
2019/01/30 Javascript
[04:19]完美世界携手游戏风云打造 卡尔工作室模型介绍篇
2013/04/24 DOTA
[50:27]OG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/30 DOTA
python解析文件示例
2014/01/23 Python
Python字符串格式化
2015/06/15 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
高效使用Python字典的清单
2018/04/04 Python
解决Mac下使用python的坑
2019/08/13 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
python的range和linspace使用详解
2019/11/27 Python
Keras 使用 Lambda层详解
2020/06/10 Python
python中温度单位转换的实例方法
2020/12/27 Python
趣天网日本站:Qoo10 JP
2019/09/18 全球购物
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
安踏官方商城:anta.cn
2019/12/16 全球购物
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
2014大学生批评与自我批评思想汇报
2014/09/21 职场文书
写给妈妈的感谢信
2015/01/22 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
导游词之镇江西津古渡
2019/11/06 职场文书
基于Redis位图实现用户签到功能
2021/05/08 Redis
python3实现无权最短路径的方法
2021/05/12 Python