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中为String对象添加trim,ltrim,rtrim方法
Sep 22 Javascript
在修改准备发的批量美化select+可修改select时,在非IE下发现了几个问题
Jan 09 Javascript
javascript new一个对象的实质
Jan 07 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
Apr 16 Javascript
javascript中match函数的用法小结
Feb 08 Javascript
Javascript自执行匿名函数(function() { })()的原理浅析
May 15 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
Oct 10 Javascript
微信小程序 textarea 详解及简单使用方法
Dec 05 Javascript
浅谈SpringMVC中post checkbox 多选框value的值(隐藏域方式)
Jan 08 Javascript
angularJs中$http获取后台数据的实例讲解
Aug 08 Javascript
vue-cli3 DllPlugin 提取公用库的方法
Apr 24 Javascript
详解vue中使用axios对同一个接口连续请求导致返回数据混乱的问题
Nov 06 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检查网站是否宕机的方法示例
2017/07/24 PHP
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
浅谈php使用curl模拟多线程发送请求
2019/03/08 PHP
javascript Event对象详解及使用示例
2013/11/22 Javascript
JavaScript学习笔记之数组随机排序
2016/03/23 Javascript
js实现自定义路由
2017/02/04 Javascript
JS数组去重(4种方法)
2017/03/27 Javascript
javascript 作用于作用域链的详解
2017/09/27 Javascript
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
2018/09/28 Javascript
详解无限滚动插件vue-infinite-scroll源码解析
2019/05/12 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
layui文件上传控件带更改后数据传值的方法
2019/09/23 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
通过JS判断网页是否为手机打开
2020/10/28 Javascript
react-native 实现购物车滑动删除效果的示例代码
2021/01/15 Javascript
[56:35]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第一局
2016/03/06 DOTA
使用Python开发windows GUI程序入门实例
2014/10/23 Python
分析用Python脚本关闭文件操作的机制
2015/06/28 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
查看TensorFlow checkpoint文件中的变量名和对应值方法
2018/06/14 Python
Python日志模块logging基本用法分析
2018/08/23 Python
Python 保存矩阵为Excel的实现方法
2019/01/28 Python
离线状态下在jupyter notebook中使用plotly实例
2020/04/24 Python
django 数据库返回queryset实现封装为字典
2020/05/19 Python
浅谈numpy中函数resize与reshape,ravel与flatten的区别
2020/06/18 Python
TensorFlow中如何确定张量的形状实例
2020/06/23 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
2020/08/18 Python
使用PyCharm官方中文语言包汉化PyCharm
2020/11/18 Python
美国最受欢迎的童装品牌之一:The Children’s Place
2016/07/23 全球购物
乐天旅游台湾网站:Rakuten Travel TW
2017/06/01 全球购物
美国糖果店:Sugarfina
2019/02/21 全球购物
应征英语教师求职信
2013/11/27 职场文书
邮政员工辞职信
2014/01/16 职场文书
小学校本培训方案
2014/06/06 职场文书
Go中的条件语句Switch示例详解
2021/08/23 Golang
Java工作中实用的代码优化技巧分享
2022/04/21 Java/Android