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 相关文章推荐
用Javascript 和 CSS 实现脚注(Footnote)效果
Sep 09 Javascript
parseInt parseFloat js字符串转换数字
Aug 01 Javascript
JS限制文本框只能输入数字和字母方法
Feb 28 Javascript
javascript操作Cookie(设置、读取、删除)方法详解
Mar 18 Javascript
详解js的延迟对象、跨域、模板引擎、弹出层、AJAX【附实例下载】
Dec 19 Javascript
详解JavaScript中的六种错误类型
Sep 21 Javascript
Vue中 key keep-alive的实现原理
Sep 18 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
May 08 Javascript
vue动态设置页面title的方法实例
Aug 23 Javascript
vue中是怎样监听数组变化的
Oct 24 Javascript
JS实现鼠标移动拖尾
Dec 27 Javascript
Vue项目打包、合并及压缩优化网页响应速度
Jul 07 Vue.js
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 clearstatcache()函数详解
2010/03/02 PHP
PHP图片处理之图片旋转和图片翻转实例
2014/11/19 PHP
学习php设计模式 php实现观察者模式(Observer)
2015/12/09 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
学习YUI.Ext基础第一天
2007/03/10 Javascript
JavaScript 提升运行速度之循环篇 译文
2009/08/15 Javascript
js parseInt(&quot;08&quot;)未指定进位制问题
2010/06/19 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
JS创建类和对象的两种不同方式
2014/08/08 Javascript
js实现TAB切换对应不同颜色的代码
2015/08/31 Javascript
AngularJS教程 ng-style 指令简单示例
2016/08/03 Javascript
Angular2表单自定义验证器的实现
2016/10/19 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
ES6学习教程之对象的扩展详解
2017/05/02 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
vue v-model的用法解析
2020/10/19 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
[09:33]2015国际邀请赛第四日TOP10
2015/08/08 DOTA
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
[03:58]兄弟们,回来开黑了!DOTA2昔日战友招募宣传视频
2016/07/17 DOTA
一则python3的简单爬虫代码
2014/05/26 Python
python web框架学习笔记
2016/05/03 Python
Python简单操作sqlite3的方法示例
2017/03/22 Python
Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录
2017/09/20 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
2020/05/10 Python
Python中如何定义一个函数
2016/09/06 面试题
韩语专业本科生求职信
2013/10/01 职场文书
清正廉洁演讲稿
2014/05/22 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
教师个人师德工作总结2015
2015/05/12 职场文书
因工资原因离职的辞职信范文
2015/05/12 职场文书
新年晚会主持词开场白
2015/05/28 职场文书
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
2021/03/31 jQuery
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS
《火纹风花雪月无双》预告“神秘雇佣兵” 紫发剑客
2022/04/13 其他游戏