js判断当前浏览器类型,判断IE浏览器方法


Posted in Javascript onJune 02, 2014

最短IE判断方法,原文地址: https://3water.com/article/23621.htm

判断IE浏览器最短方法:var isIE = !-[1,]

原理:[1,]在标准浏览器中返回"1",相当于调用[1,].toString(),在IE中返回"1,"
在这个时候对返回值使用负号强制转换为数字时,标准浏览器返回1,IE则返回NaN,
再对1和NaN取反时,标准浏览器返回false,IE返回true。

js判断浏览器类型

原文基本上没有什么问题,但他的判断方式还不是很严谨。

如:navigator.userAgent.indexOf("Safari")>0,如果"Safari"这个单词出现在userAgent的最前端,那不是就无法得到正确的结果了。应该把 >0 改为 !=-1
然后我对我机子上现有的5个独立内核浏览器做了下测试,发现Opera的userAgent值为"Opera/9.80 (Windows NT 5.1; U; Ed..."
正好印证了刚刚说的。
其实大多时候我们在做浏览器兼容时主要是针对 IE 和 非IE 浏览器,也就是说一般情况下只需要判断是否是IE浏览器即可。
判断当前浏览器类型代码

<script type="text/javascript" >
    <!-- 
function getOs() 
{ 
    var OsObject = ""; 
   if(isIE = navigator.userAgent.indexOf("MSIE")!=-1) { 
        return "MSIE"; 
   } 
   if(isFirefox=navigator.userAgent.indexOf("Firefox")!=-1){ 
        return "Firefox"; 
   } 
   if(isChrome=navigator.userAgent.indexOf("Chrome")!=-1){ 
        return "Chrome"; 
   } 
   if(isSafari=navigator.userAgent.indexOf("Safari")!=-1) { 
        return "Safari"; 
   }  
   if(isOpera=navigator.userAgent.indexOf("Opera")!=-1){ 
        return "Opera"; 
   } } 
 alert("type -> "+getOs());
--> 
</script>
Javascript 相关文章推荐
Highcharts 非常实用的Javascript统计图demo示例
Jul 03 Javascript
Jquery ajaxStart()与ajaxStop()方法(实例讲解)
Dec 18 Javascript
Bootstrap媒体对象的实现
May 01 Javascript
js定义类的几种方法(推荐)
Jun 08 Javascript
详解JavaScript中数组的reduce方法
Dec 02 Javascript
Angular4 中常用的指令入门总结
Jun 12 Javascript
js实现rem自动匹配计算font-size的示例
Nov 18 Javascript
angularJS的radio实现单项二选一的使用方法
Feb 28 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
Dec 02 Javascript
继承行为在 ES5 与 ES6 中的区别详解
Dec 24 Javascript
vue-cli —— 如何局部修改Element样式
Oct 22 Javascript
用webAPI实现图片放大镜效果
Nov 23 Javascript
php+js实现倒计时功能
Jun 02 #Javascript
node.js应用后台守护进程管理器Forever安装和使用实例
Jun 01 #Javascript
node.js入门教程
Jun 01 #Javascript
什么是Node.js?Node.js详细介绍
Jun 01 #Javascript
基于iframe实现类似于ajax的页面无刷新
May 31 #Javascript
通过Jquery的Ajax方法读取将table转换为Json
May 31 #Javascript
jQuery移除元素自动解绑事件实现思路及代码
May 31 #Javascript
You might like
坏狼的PHP学习教程之第1天
2008/06/15 PHP
解析array splice的移除数组中指定键的值,返回一个新的数组
2013/07/02 PHP
zf框架db类的分页示例分享
2014/03/14 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
js时间比较示例分享(日期比较)
2014/03/05 Javascript
jQuery将多条数据插入模态框的示例代码
2014/09/25 Javascript
js预加载图片方法汇总
2015/06/15 Javascript
JS仿淘宝实现的简单滑动门效果代码
2015/10/14 Javascript
模仿password输入框的实现代码
2016/06/07 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
javascript高级模块化require.js的具体使用方法
2017/10/31 Javascript
详解js的作用域、预解析机制
2018/02/05 Javascript
element ui 对话框el-dialog关闭事件详解
2018/02/26 Javascript
layui 给数据表格加序号的方法
2018/08/20 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
详解Vue前端生产环境发布配置实战篇
2019/05/07 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
vue配置文件实现代理v2版本的方法
2019/06/21 Javascript
python函数参数*args**kwargs用法实例
2013/12/04 Python
Python实现的桶排序算法示例
2017/11/29 Python
python之pandas用法大全
2018/03/13 Python
Python DataFrame 设置输出不显示index(索引)值的方法
2018/06/07 Python
Python常见内置高效率函数用法示例
2018/07/31 Python
python实现kmp算法的实例代码
2019/04/03 Python
python自动化unittest yaml使用过程解析
2020/02/03 Python
Python3批量创建Crowd用户并分配组
2020/05/20 Python
毕业生个人的自我评价优秀范文
2013/10/03 职场文书
护士实习求职信
2014/06/22 职场文书
高中生旷课检讨书
2014/10/08 职场文书
公司委托书格式范文
2014/10/09 职场文书
少先队工作总结2015
2015/05/13 职场文书
电影焦裕禄观后感
2015/06/09 职场文书
《夹竹桃》教学反思
2016/02/23 职场文书
Java实现二维数组和稀疏数组之间的转换
2021/06/27 Java/Android