基于jQuery1.9版本如何判断浏览器版本类型


Posted in Javascript onJanuary 12, 2016

在jquery.1.9以前的版本,可以使用$.browser很轻松的判断浏览器的类型和版本,但是在1.9中和以后的版本中,$.browser已经被删除,下面就介绍一下如何实现此功能,希望能够给需要的朋友带来帮助。

一.自定义代码:

$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase()); 
$.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase()); 
$.browser.opera = /opera/.test(navigator.userAgent.toLowerCase()); 
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());

以上代码中,等号后面的表达式返回值是布尔类型的,用来表示是否支持此浏览器。这样就实现了自定义的$.browser效果。

二.判断IE6浏览器:

jquery1.9之前使用以下代码:

if ($.browser.msie && 7 > $.browser.version) {}

jquery1.9和之后使用以下代码:

if ('undefined' == typeof(document.body.style.maxHeight)) {}

三.判断IE6-IE8浏览器:

if (!$.support.leadingWhitespace) {}

综上所述,基本实现了我们的要求,这里就不多介绍了。

扩展知识点:

jQuery.browser的定义和用法:

浏览器内核标识,依据 navigator.userAgent 判断。

可用值: safari 、opera 、msie 和mozilla。

浏览器对象检测技术与此属性共同使用可提供可靠的浏览器检测支持。

在jQuery 1.9中已经删除。

如果网页在opera浏览器中运行,那么jQuery.browser.opera会返回true,否则返回false。
其他的属性值以此类推。

实例代码:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="https://3water.com/" />
<title>三水点靠木</title>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
alert($.browser.msie); 
}); 
</script> 
</head> 
<body> 
如果在IE浏览器中运行则返回true,否则返回false。 
</body> 
</html>

typeof 运算符的用法:

typeof运算符放在操作数之前,可以检测此操作数的数据类型,并返回一个字符串用以说明操作数的类型。
操作数可以是变量或者值等。

typeof运算符可能返回的值:

一.如果变量未赋值或者变量值赋值为undefined,则返回undefined。

实例实例:

var a
console.log(typeof(a))

变量a没有被赋值,这个时候变量被默认隐式赋值undefined。输出结果:undefined。

var a=undefined;
console.log(typeof(a))

变量a被赋值undefined。输出结果:undefined。

二.如果变量或者值是布尔类型,则返回boolean。

实例代码:

console.log(typeof (true))

输出结果:boolean。

var a=2,b=1,c=3,d;
d=a+b;
console.log(typeof(c==d))

输出结果:boolean。

三.如果变量或者值是数值类型,则返回number。

console.log(typeof(1))

输出结果:number。

四.如果变量或者值是字符串,则返回string。

console.log(typeof("mayi"))

输出结果:string。

console.log(typeof("a"))

ECMAScript中没有字符类型。所以此段代码也会输出string。

五.变量是引用类型或者null,则会返回object。

注:null可以认为是对象的占位符,所以返回值也是object。

实例代码:

var a=new Date;
console.log(typeof(a))

建立一个时间对象实例a,它是一个引用类型。输出结果: objct。

console.log(typeof(null))

输出结果: object。

六.如果变量是函数,则返回function

console.log(typeof(function(){alert("大家好")}))

输出结果:function。

var a=function(){alert("大家好")}
console.log(typeof(a))

输出结果:function。

Javascript 相关文章推荐
使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由
Jun 28 Javascript
jquery ztree异步搜索(搜叶子)实践
Feb 25 Javascript
js实现导航吸顶效果
Feb 24 Javascript
纯JS实现简单的日历
Jun 26 Javascript
windows下更新npm和node的方法
Nov 30 Javascript
微信小程序switch组件使用详解
Jan 31 Javascript
解决LayUI表单获取不到data的问题
Aug 20 Javascript
使用原生js编写一个简单的框选功能方法
May 13 Javascript
package.json配置文件构成详解
Aug 27 Javascript
记一次用ts+vuecli4重构项目的实现
May 21 Javascript
vue2.0实现列表数据增加和删除
Jun 17 Javascript
OpenLayers3加载常用控件使用方法详解
Sep 25 Javascript
jQuery版本升级踩坑大全
Jan 12 #Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
Jan 12 #Javascript
7个jQuery最佳实践
Jan 12 #Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
Jan 12 #Javascript
JavaScript实现输入框(密码框)出现提示语
Jan 12 #Javascript
javascript自动恢复文本框点击清除后的默认文本
Jan 12 #Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
Jan 12 #Javascript
You might like
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
Symfony2创建页面实例详解
2016/03/18 PHP
ecshop添加菜单及权限分配问题
2017/11/21 PHP
Javascript 键盘keyCode键码值表
2009/12/24 Javascript
javascript获取四位数字或者字母的随机数
2015/01/09 Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
2015/12/18 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
基于jquery实现智能表单验证操作
2016/05/09 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
easyui下拉框动态级联加载的示例代码
2017/11/29 Javascript
详解Vue.js中.native修饰符
2018/04/24 Javascript
nodejs分离html文件里面的js和css的方法
2019/04/09 NodeJs
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
Django在Win7下的安装及创建项目hello word简明教程
2014/07/14 Python
Python中subprocess的简单使用示例
2015/07/28 Python
Python新手们容易犯的几个错误总结
2017/04/01 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
PHP引擎php.ini参数优化深入讲解
2021/03/24 PHP
教师推荐信范文
2013/11/24 职场文书
木工主管岗位职责
2013/12/08 职场文书
分公司负责人任命书
2014/06/04 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
ktv好的活动方案
2014/08/17 职场文书
群众路线个人整改方案
2014/10/25 职场文书
毕业生班级鉴定评语
2015/01/04 职场文书
大学生思想道德自我评价
2015/03/09 职场文书
宾馆客房管理制度
2015/08/06 职场文书
护士年终工作总结不会写?各科护士模板总结
2020/01/02 职场文书
Django 如何实现文件上传下载
2021/04/08 Python
详解JavaScript中的执行上下文及调用堆栈
2021/04/29 Javascript
mysql全面解析json/数组
2022/07/07 MySQL