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 相关文章推荐
js表数据排序 sort table data
Feb 18 Javascript
javascript 写类方式之五
Jul 05 Javascript
jQuery对表单的操作代码集合
Apr 06 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
Jan 17 Javascript
node.js中的console.info方法使用说明
Dec 09 Javascript
jQuery.extend 函数及用法详细
Sep 06 Javascript
javascript+css3 实现动态按钮菜单特效
Feb 06 Javascript
使用json来定义函数,在里面可以定义多个函数的实现方法
Oct 28 Javascript
Jquery实时监听input value的实例
Jan 26 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
Dec 19 Javascript
微信小程序日期选择器实例代码
Jul 18 Javascript
vue实现用户长时间不操作自动退出登录功能的实现代码
Jul 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 空格,换行,跳格使用说明
2009/12/18 PHP
PHP Class&amp;Object -- 解析PHP实现二叉树
2013/06/25 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
解决laravel中日志权限莫名变成了root的问题
2019/10/17 PHP
Jquery写一个鼠标拖动效果实现原理与代码
2012/12/24 Javascript
js通过八个点 拖动改变div大小的实现方法
2014/03/05 Javascript
jQuery中[attribute^=value]选择器用法实例
2014/12/31 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
关于axios返回空对象的问题解决
2017/04/04 Javascript
Javascript 实现匿名递归的实例代码
2017/05/25 Javascript
javascript兼容性(实例讲解)
2017/08/15 Javascript
Node Puppeteer图像识别实现百度指数爬虫的示例
2018/02/22 Javascript
微信小程序用户位置权限的获取方法(拒绝后提醒)
2018/11/15 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
jQuery实现计算器功能
2020/10/19 jQuery
[03:07]DOTA2英雄基础教程 冰霜诅咒极寒幽魂
2013/12/06 DOTA
Python多线程同步Lock、RLock、Semaphore、Event实例
2014/11/21 Python
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
用Python程序抓取网页的HTML信息的一个小实例
2015/05/02 Python
Python实现的RSS阅读器实例
2015/07/25 Python
使用python编写监听端
2018/04/12 Python
深入分析python数据挖掘 Json结构分析
2018/04/21 Python
利用python GDAL库读写geotiff格式的遥感影像方法
2018/11/29 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
2019/12/25 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
python numpy库np.percentile用法说明
2020/06/08 Python
pytorch  网络参数 weight bias 初始化详解
2020/06/24 Python
英国性感内衣和睡衣品牌:Bluebella
2018/01/26 全球购物
农业资源与环境专业自荐信范文
2013/12/30 职场文书
追悼会上的答谢词
2014/01/10 职场文书
法学院方阵解说词
2014/01/29 职场文书
优秀实习生感言
2014/03/01 职场文书
大学新学期计划书
2014/04/28 职场文书
公司总经理助理岗位职责
2014/07/09 职场文书
Python使用pyecharts控件绘制图表
2022/06/05 Python