基于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 相关文章推荐
IE6已终止操作问题的2种情况及解决
Apr 23 Javascript
JavaScript实现的简单幂函数实例
Apr 17 Javascript
jQuery实现的多级下拉菜单效果代码
Aug 24 Javascript
如何防止JavaScript自动插入分号
Nov 05 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
Nov 25 Javascript
javascript中活灵活现的Array对象详解
Nov 30 Javascript
详解js中==与===的区别
Jan 08 Javascript
Bootstrap页面缩小变形的快速解决办法
Feb 03 Javascript
微信小程序视图template模板引用的实例详解
Sep 20 Javascript
详解使用React全家桶搭建一个后台管理系统
Nov 04 Javascript
JS实现模糊查询带下拉匹配效果
Jun 21 Javascript
微信小程序实现多选功能
Nov 04 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
用PHP制作静态网站的模板框架(一)
2006/10/09 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
2009/06/21 PHP
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
2010/02/09 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
jQuery(非HTML5)可编辑表格实现代码
2012/12/11 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
2013/04/26 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
window.open()实现post传递参数
2015/03/12 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
js 打开新页面在屏幕中间的实现方法
2016/11/02 Javascript
Mongoose学习全面理解(推荐)
2017/01/21 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
bootstrap Table的一些小操作
2017/11/01 Javascript
jQuery解析json格式数据示例
2018/09/01 jQuery
使用 Vue cli 3.0 构建自定义组件库的方法
2019/04/30 Javascript
利用Angular7开发一个Radio组件的全过程
2019/07/11 Javascript
浅谈python写入大量文件的问题
2018/11/09 Python
Python 输出时去掉列表元组外面的方括号与圆括号的方法
2018/12/24 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
python安装pil库方法及代码
2019/06/25 Python
关于pytorch中全连接神经网络搭建两种模式详解
2020/01/14 Python
Python使用uuid库生成唯一标识ID
2020/02/12 Python
Python内置函数及功能简介汇总
2020/10/13 Python
HTML5混合开发二维码扫描以及调用本地摄像头
2017/12/27 HTML / CSS
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
软件缺陷的分类都有哪些
2014/08/22 面试题
介绍一下Ruby的多线程处理
2013/02/01 面试题
2014年教研活动总结范文
2014/04/26 职场文书
四风批评与自我批评范文
2014/10/14 职场文书
2014年度工作总结报告
2014/12/15 职场文书
售后服务承诺函格式
2015/01/21 职场文书
2015自愿离婚协议书范本
2015/01/28 职场文书
欠款起诉书范文
2015/05/19 职场文书
2015年学校禁毒工作总结
2015/05/27 职场文书