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 相关文章推荐
prototype1.4中文手册
Sep 22 Javascript
js实现简单模态窗口,背景灰显
Nov 14 Javascript
js检测输入内容全为空格的方法
May 03 Javascript
JavaScript性能优化总结之加载与执行
Aug 11 Javascript
JavaScript数据操作_浅谈原始值和引用值的操作本质
Aug 23 Javascript
js仿iphone秒表功能 计算平均数
Jan 11 Javascript
js实现符合国情的日期插件详解
Jan 19 Javascript
jQuery实现级联下拉框实战(5)
Feb 08 Javascript
AngularJS页面传参的5种方式
Apr 01 Javascript
详解Vue2.x-directive的学习笔记
Jul 17 Javascript
vue中使用localstorage来存储页面信息
Nov 04 Javascript
vue-router 源码之实现一个简单的 vue-router
Jul 02 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
CodeIgniter与PHP5.6的兼容问题
2015/07/16 PHP
PHP实现类似于C语言的文件读取及解析功能
2017/09/01 PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
2018/01/16 PHP
PHP实现数组转JSon和JSon转数组的方法示例
2018/06/14 PHP
phpinfo的知识点总结
2019/10/10 PHP
使用jQuery简化Ajax开发 Ajax开发入门
2009/10/14 Javascript
js css 实现遮罩层覆盖其他页面元素附图
2014/09/22 Javascript
nodejs中使用多线程编程的方法实例
2015/03/24 NodeJs
javascript实现表单提交后,提交按钮不可用的方法
2015/04/18 Javascript
文字垂直滚动之javascript代码
2015/07/29 Javascript
WebSocket+node.js创建即时通信的Web聊天服务器
2016/08/08 Javascript
Ionic + Angular.js实现图片轮播的方法示例
2017/05/21 Javascript
完美解决iview 的select下拉框选项错位的问题
2018/03/02 Javascript
如何以Angular的姿势打开Font-Awesome详解
2018/04/22 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
基于 vue-skeleton-webpack-plugin 的骨架屏实战
2019/08/05 Javascript
微信小程序 自定义弹窗实现过程(附代码)
2019/12/05 Javascript
js实现抽奖功能
2020/11/24 Javascript
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
python操作MySQL 模拟简单银行转账操作
2017/09/27 Python
python matplotlib坐标轴设置的方法
2017/12/05 Python
python使用if语句实现一个猜拳游戏详解
2019/08/27 Python
Python使用正则实现计算字符串算式
2019/12/29 Python
专科毕业生求职简历的自我评价
2013/10/12 职场文书
主持人演讲稿范文
2013/12/28 职场文书
厨师长岗位职责
2014/03/02 职场文书
基层党组织公开承诺书
2014/03/28 职场文书
2014年远程教育工作总结
2014/12/09 职场文书
会计求职简历自我评价
2015/03/10 职场文书
中秋节感想
2015/08/10 职场文书
导游词之江西赣州
2019/10/15 职场文书
深入理解python多线程编程
2021/04/18 Python
Golang二维数组的使用方式
2021/05/28 Golang
Python Matplotlib绘制条形图的全过程
2021/10/24 Python
Python中的嵌套循环详情
2022/03/23 Python