基于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 相关文章推荐
js实现iframe动态调整高度的代码
Jan 06 Javascript
Js,alert出现乱码问题的解决方法
Jun 19 Javascript
Bootstrap按钮组件详解
Apr 26 Javascript
新入门node.js必须要知道的概念(必看篇)
Aug 10 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
Aug 23 Javascript
Node.js connect ECONNREFUSED错误解决办法
Sep 15 Javascript
Vue.js实现实例搜索应用功能详细代码
Aug 24 Javascript
原生JavaScript实现Ajax异步请求
Nov 19 Javascript
vue路由懒加载的实现方法
Mar 12 Javascript
爬虫利器Puppeteer实战
Jan 09 Javascript
vue.js路由mode配置之去掉url上默认的#方法
Nov 01 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
Apr 13 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+ajax 无刷新删除数据
2010/02/20 PHP
使用php get_headers 判断URL是否有效的解决办法
2013/04/27 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
访问编码后的中文URL返回404错误的解决方法
2014/08/20 PHP
php+ajax无刷新上传图片实例代码
2015/11/17 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
2020/03/26 PHP
优化javascript的执行速度
2010/01/23 Javascript
基于JQUERY的两个ListBox子项互相调整的实现代码
2011/05/07 Javascript
js操作textarea 常用方法总结
2012/12/03 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
2015/03/04 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
js中unicode转码方法详解
2015/10/09 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
微信小程序城市定位的实现实例(获取当前所在国家城市信息)
2017/05/17 Javascript
web前端vue之CSS过渡效果示例
2018/01/10 Javascript
详解Angular结合zTree异步加载节点数据
2018/01/20 Javascript
基于express中路由规则及获取请求参数的方法
2018/03/12 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
JavaScript前端实现压缩图片功能
2020/03/06 Javascript
js实现时间日期校验
2020/05/26 Javascript
vue接通后端api以及部署到服务器操作
2020/08/13 Javascript
vue 数据双向绑定的实现方法
2021/03/04 Vue.js
[02:04]2018DOTA2亚洲邀请赛Secret赛前采访
2018/04/03 DOTA
Python文件及目录操作实例详解
2015/06/04 Python
CentOS中使用virtualenv搭建python3环境
2015/06/08 Python
解析Python中的eval()、exec()及其相关函数
2017/12/20 Python
python3实现字符串操作的实例代码
2019/04/16 Python
Django使用unittest模块进行单元测试过程解析
2019/08/02 Python
解决IDEA 的 plugins 搜不到任何的插件问题
2020/05/04 Python
CSS3实现背景透明文字不透明的示例代码
2018/06/25 HTML / CSS
蔻驰英国官网:COACH英国
2020/07/19 全球购物
美国艺术和工艺品商店:Hobby Lobby
2020/12/09 全球购物
不同意离婚代理词
2015/05/23 职场文书
物业管理交接协议书
2016/03/24 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
Spring this调用当前类方法无法拦截的示例代码
2022/03/20 Java/Android