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中复制行和删除行的操作实例
Jun 25 Javascript
Javascript控制页面链接在新窗口打开具体方法
Aug 16 Javascript
javascript抽象工厂模式详细说明
Dec 16 Javascript
JavaScript原生对象之String对象的属性和方法详解
Mar 13 Javascript
无缝滚动的简单实现代码(推荐)
Jun 07 Javascript
javascript 内置对象及常见API详细介绍
Nov 01 Javascript
纯JS单页面赛车游戏制作代码分享
Mar 03 Javascript
BootStrap中的Fontawesome 图标
May 25 Javascript
Vue实现web分页组件详解
Nov 28 Javascript
JavaScript动态加载重复绑定问题
Apr 01 Javascript
详解vue开发中调用微信jssdk的问题
Apr 16 Javascript
微信小程序 swiper 组件遇到的问题及解决方法
May 26 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
DOMXML函数笔记
2006/10/09 PHP
apache+php+mysql安装配置方法小结
2010/08/01 PHP
php生成随机密码的三种方法小结
2010/09/04 PHP
php 获取百度的热词数据的代码
2012/02/18 PHP
PHP入门之常量简介和系统常量
2014/05/12 PHP
js中的this关键字详解
2013/09/25 Javascript
javascript初学者常用技巧
2014/09/02 Javascript
jQuery源码分析之jQuery.fn.each与jQuery.each用法
2015/01/23 Javascript
JS特效实现图片自动播放并可控的效果
2015/07/31 Javascript
jQuery获取cookie值及删除cookie用法实例
2016/04/15 Javascript
用NodeJS实现批量查询地理位置的经纬度接口
2016/08/16 NodeJs
基于vuejs+webpack的日期选择插件
2020/05/21 Javascript
bootstrap多层模态框滚动条消失的问题
2017/07/21 Javascript
create-react-app安装出错问题解决方法
2018/09/04 Javascript
vue动态配置模板 'component is'代码
2019/07/04 Javascript
vue框架制作购物车小球动画效果实例代码
2019/09/26 Javascript
vue使用过滤器格式化日期
2021/01/20 Vue.js
用Python编写web API的教程
2015/04/30 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
2018/03/30 Python
用python 批量更改图像尺寸到统一大小的方法
2018/03/31 Python
对Tensorflow中Device实例的生成和管理详解
2020/02/04 Python
基于Python fminunc 的替代方法
2020/02/29 Python
python 负数取模运算实例
2020/06/03 Python
CSS实现鼠标滑过鼠标点击代码写法
2016/12/26 HTML / CSS
加拿大票务网站:Ticketmaster加拿大
2017/07/17 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
iostream与iostream.h的区别
2015/01/16 面试题
函授毕业自我鉴定
2014/02/04 职场文书
优秀共产党员先进事迹材料
2014/05/06 职场文书
物业总经理助理岗位职责
2014/06/29 职场文书
带刀到教室的检讨书
2014/10/04 职场文书
个人职业及收入证明
2014/10/13 职场文书
团代会开幕词
2015/01/28 职场文书
奖学金个人总结
2015/03/04 职场文书
家庭教育教师培训学习体会
2016/01/14 职场文书
python套接字socket通信
2022/04/01 Python