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 相关文章推荐
JavaScript 匿名函数(anonymous function)与闭包(closure)
Oct 04 Javascript
JS对象与JSON格式数据相互转换
Feb 20 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
Jan 08 Javascript
JS 实现Json查询的方法实例
Apr 12 Javascript
jQuery找出网页上最高元素的方法
Mar 20 Javascript
jquery实现倒计时效果
Dec 14 Javascript
判断是否存在子节点的实现代码
May 18 Javascript
JavaScript实现url参数转成json形式
Sep 25 Javascript
label+input实现按钮开关切换效果的实例
Aug 16 Javascript
vue路由跳转时判断用户是否登录功能的实现
Oct 26 Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
Jan 23 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
Aug 27 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生成静态页
2006/11/25 PHP
用javascript实现点击链接弹出&quot;图片另存为&quot;而不是直接打开
2007/08/15 Javascript
jQuery学习笔记[1] jQuery中的DOM操作
2010/12/03 Javascript
javascript 基础篇1 什么是js 建立第一个js程序
2012/03/14 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
JavaScript html5 canvas画布中删除一个块区域的方法
2016/01/26 Javascript
利用n工具轻松管理Node.js的版本
2017/04/21 Javascript
vue.js中Vue-router 2.0基础实践教程
2017/05/08 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
vue动态绑定class的几种常用方式小结
2019/05/21 Javascript
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
总结Python中逻辑运算符的使用
2015/05/13 Python
python爬取淘宝商品详情页数据
2018/02/23 Python
python删除字符串中指定字符的方法
2018/08/13 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
2019/06/03 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
python爬虫开发之使用python爬虫库requests,urllib与今日头条搜索功能爬取搜索内容实例
2020/03/10 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
html5服务器推送_动力节点Java学院整理
2017/07/12 HTML / CSS
入党申请人的自我鉴定
2013/12/01 职场文书
西门豹教学反思
2014/02/04 职场文书
村党支部换届选举方案
2014/05/02 职场文书
关于工作时间玩手机的检讨书
2014/09/18 职场文书
2014年保育员工作总结
2014/12/02 职场文书
个人求职意向书
2015/05/11 职场文书
2015年校医个人工作总结
2015/07/24 职场文书
村官2015年度工作总结
2015/10/14 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python
利用JuiceFS使MySQL 备份验证性能提升 10 倍
2022/03/17 MySQL
详解Mysql事务并发(脏读、不可重复读、幻读)
2022/04/29 MySQL