基于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 相关文章推荐
javascript 强制刷新页面的实现代码
Dec 13 Javascript
JQuery获取样式中的background-color颜色值的问题
Aug 20 Javascript
jquery form 加载数据示例
Apr 21 Javascript
关闭页面window.location事件未执行的原因及解决方法
Sep 01 Javascript
javascript中的Base64、UTF8编码与解码详解
Mar 18 Javascript
纯javascript判断查询日期是否为有效日期
Aug 24 Javascript
js实现文字滚动效果
Mar 03 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
Sep 06 Javascript
利用JS提交表单的几种方法和验证(必看篇)
Sep 17 Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
Dec 12 Javascript
Angular2 父子组件数据通信实例
Jun 22 Javascript
jQuery 查找元素操作实例小结
Oct 02 jQuery
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
异步加载技术实现当滚动条到最底部的瀑布流效果
2014/09/16 PHP
php中count获取多维数组长度的方法
2014/11/03 PHP
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
PHP+Ajax实现无刷新分页实例详解(附demo源码下载)
2016/04/07 PHP
PHP输出XML格式数据的方法总结
2017/02/08 PHP
Laravel学习教程之model validation的使用示例
2017/10/23 PHP
微信JSSDK分享功能图文实例详解
2019/04/08 PHP
JavaScript使用prototype定义对象类型
2007/02/07 Javascript
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
JQuery 获取json数据$.getJSON方法的实例代码
2013/08/02 Javascript
JS的参数传递示例介绍
2014/02/08 Javascript
js,jquery滚动/跳转页面到指定位置的实现思路
2014/06/03 Javascript
javascript实现的一个随机点名功能
2014/08/26 Javascript
点击button获取text内容并改变样式的js实现
2014/09/09 Javascript
jQuery对象和DOM对象之间相互转换的方法介绍
2015/02/28 Javascript
jQuery序列化表单成对象的简单实现
2016/11/29 Javascript
javascript基础知识之html5轮播图实例讲解(44)
2017/02/17 Javascript
浅谈实现vue2.0响应式的基本思路
2018/02/13 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
2018/03/09 Javascript
[02:16]DOTA2英雄基础教程 干扰者
2014/01/15 DOTA
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
python 字典(dict)遍历的四种方法性能测试报告
2014/06/25 Python
python程序封装为win32服务的方法
2021/03/07 Python
python实现词法分析器
2019/01/31 Python
Python爬取知乎图片代码实现解析
2019/09/17 Python
简单的Python人脸识别系统
2020/07/14 Python
python中os.remove()用法及注意事项
2021/01/31 Python
HTML 5 input placeholder 属性如何完美兼任ie
2014/05/12 HTML / CSS
Under Armour安德玛荷兰官网:美国高端运动科技品牌
2019/07/10 全球购物
春节联欢会主持词
2014/03/24 职场文书
新农村建设标语
2014/06/24 职场文书
六一儿童节新闻稿
2015/07/17 职场文书
2019通用版劳动合同范本!
2019/07/11 职场文书
详解Mysql 函数调用优化
2021/04/07 MySQL
原生JS实现分页
2022/04/19 Javascript