js/jquery判断浏览器的方法小结


Posted in Javascript onSeptember 02, 2014

JS获取浏览器信息

浏览器代码名称:navigator.appCodeName
浏览器名称:navigator.appName
浏览器版本号:navigator.appVersion
对Java的支持:navigator.javaEnabled()
MIME类型(数组):navigator.mimeTypes
系统平台:navigator.platform
插件(数组):navigator.plugins
用户代理:navigator.userAgent

js判断IE浏览器的四种方法:

方法一:

if(window.addEventListener){ 
alert("not ie"); 
}else if(window.attachEvent){ 
alert("is ie"); 
}else{ 
alert("这种情况发生在不支持DHTML的老版本浏览器(现在一般都支持)") 
}

注释:该方法在IE9及以上IE版本会弹出not ie结果

方法二:

if(document.all){ 
alert("IE"); 
}else{ 
alert("not ie"); 
}

方法三:

var navigatorName = "Microsoft Internet Explorer"; 
if( navigator.appName == navigatorName ){ 
alert("ie") 
}else{
alert("not ie") 
}

方法四:
利用了IE与标准浏览器在处理数组的toString方法的差异.对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它.

if(!+[1,])alert("这是ie浏览器"); 
else alert("这不是ie浏览器");

注释:IE9及以上版本会弹出“这不是IE浏览器”

判断常用浏览器的方法:

var explorer =navigator.userAgent ;
//ie 
if (explorer.indexOf("MSIE") >= 0) {
alert("ie");
}
//firefox 
else if (explorer.indexOf("Firefox") >= 0) {
alert("Firefox");
}
//Chrome
else if(explorer.indexOf("Chrome") >= 0){
alert("Chrome");
}
//Opera
else if(explorer.indexOf("Opera") >= 0){
alert("Opera");
}
//Safari
else if(explorer.indexOf("Safari") >= 0){
alert("Safari");
} 
//Netscape
else if(explorer.indexOf("Netscape")>= 0) { 
alert('Netscape'); 
}

这里用到navigator.userAgent。indexOf("MSIE") >= 0进行判断,当然也可以用
navigator.userAgent.indexOf("MSIE") != -1 进行判断。

jquery判断浏览器类型和浏览器版本号的方法

$(document).ready(function(){

  var brow=$.browser;

  var bInfo="";

  if(brow.msie){bInfo="MicrosoftInternetExplorer"+brow.version;}

  if(brow.mozilla){bInfo="MozillaFirefox"+brow.version;}

  if(brow.safari){bInfo="AppleSafari"+brow.version;}

  if(brow.opera){bInfo="Opera"+brow.version;}

  alert(bInfo);

});

注意:Query 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是

$.support 方法

Javascript 相关文章推荐
jquery实现树形二级菜单实例代码
Nov 20 Javascript
js判断60秒以及倒计时示例代码
Jan 24 Javascript
Bootstrap每天必学之缩略图与警示窗
Nov 29 Javascript
JavaScript中的时间处理小结
Feb 24 Javascript
Three.js学习之几何形状
Aug 01 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
Aug 26 Javascript
Canvas放置反弹效果随机图形(实例)
Aug 17 Javascript
如何使用puppet替换文件中的string
Dec 06 Javascript
Vue通过WebSocket建立长连接的实现代码
Nov 05 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
Apr 20 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
May 07 Javascript
微信小程序实现录音Record功能
May 09 Javascript
Iframe实现跨浏览器自适应高度解决方法
Sep 02 #Javascript
jQuery级联操作绑定事件实例
Sep 02 #Javascript
jquery和css3实现的炫酷时尚的菜单导航
Sep 01 #Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
Sep 01 #Javascript
jQuery淡入淡出元素让其效果更为生动
Sep 01 #Javascript
JQuery表格拖动调整列宽效果(自己动手写的)
Sep 01 #Javascript
JQuery中的html()、text()、val()区别示例介绍
Sep 01 #Javascript
You might like
php数据类型判断函数有哪些
2013/09/23 PHP
thinkphp模板赋值与替换实例简述
2014/11/24 PHP
php通过ksort()函数给关联数组按照键排序的方法
2015/03/18 PHP
php转换上传word文件为PDF的方法【基于COM组件】
2019/06/10 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
js的with语句使用方法
2007/09/21 Javascript
基于JQuery的一句话搞定手风琴菜单
2012/09/14 Javascript
JS将表单导出成EXCEL的实例代码
2013/11/11 Javascript
jQuery的deferred对象详解
2014/11/12 Javascript
js+canvas绘制矩形的方法
2016/01/28 Javascript
深入学习js瀑布流布局
2016/10/14 Javascript
微信小程序 刷新上拉下拉不会断详细介绍
2017/05/11 Javascript
BootStrap Fileinput上传插件使用实例代码
2017/07/28 Javascript
cnpm加速Angular项目创建的方法
2018/09/07 Javascript
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
2020/08/31 Javascript
微信小程序入门之绘制时钟
2020/10/22 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
终端命令查看TensorFlow版本号及路径的方法
2018/06/13 Python
python读取LMDB中图像的方法
2018/07/02 Python
详解Python进阶之切片的误区与高级用法
2018/12/24 Python
python使用paramiko模块通过ssh2协议对交换机进行配置的方法
2019/07/25 Python
python 工具 字符串转numpy浮点数组的实现
2020/03/14 Python
Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例
2020/03/14 Python
Python HTMLTestRunner可视化报告实现过程解析
2020/04/10 Python
html5新特性与用法大全
2018/09/13 HTML / CSS
九年级语文教学反思
2014/02/04 职场文书
致接力运动员广播稿
2014/02/17 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
家长通知书家长评语
2014/04/17 职场文书
综治工作心得体会
2014/09/11 职场文书
股指期货心得体会
2014/09/13 职场文书
运动会稿件100字
2014/09/24 职场文书
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android