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 相关文章推荐
top.location.href 没有权限 解决方法
Aug 05 Javascript
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
Dec 02 Javascript
jQuery实现的背景动态变化导航菜单效果
Aug 24 Javascript
全系IE支持Bootstrap的解决方法
Oct 19 Javascript
纯javascript实现自动发送邮件
Oct 21 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
Feb 21 Javascript
Javascript点击按钮随机改变数字与其颜色
Sep 01 Javascript
jQuery实现字符串全部替换的方法
Dec 12 Javascript
JS+canvas动态绘制饼图的方法示例
Sep 12 Javascript
bootstrap select2插件用ajax来获取和显示数据的实例
Aug 09 Javascript
微信小程序select下拉框实现效果
May 15 Javascript
微信小程序JS加载esmap地图的实例详解
Sep 04 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
smarty实现多级分类的方法
2014/12/05 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
2016/09/11 PHP
PHP实现的超长文本分页显示功能示例
2018/06/04 PHP
根据一段代码浅谈Javascript闭包
2010/12/14 Javascript
jsTree 基于JQuery的排序节点 Bug
2011/07/26 Javascript
13 个JavaScript 性能提升技巧分享
2012/07/26 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
javascript中Array()数组函数详解
2015/08/23 Javascript
JS简单限制textarea内输入字符数量的方法
2015/10/14 Javascript
js行号显示的文本框实现效果(兼容多种浏览器 )
2015/10/23 Javascript
JS实现简单易用的手机端浮动窗口显示效果
2016/09/07 Javascript
JS中常用的正则表达式
2016/09/29 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
JavaScript中动态向表格添加数据
2017/01/24 Javascript
SVG描边动画
2017/02/23 Javascript
JavaScript基础进阶之数组方法总结(推荐)
2017/09/04 Javascript
为什么我们要做三份 Webpack 配置文件
2017/09/18 Javascript
解析vue路由异步组件和懒加载案例
2018/06/08 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
Vue+Node实现的商城用户管理功能示例
2019/12/23 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
基于JavaScript获取url参数2种方法
2020/04/17 Javascript
[03:26]《DAC最前线》之EG经理自述DOTA2经历
2015/02/02 DOTA
[43:14]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
Python编程入门的一些基本知识
2015/05/13 Python
python使用reportlab实现图片转换成pdf的方法
2015/05/22 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
大学生新闻专业个人自我评价
2013/11/12 职场文书
报到证丢失证明
2014/01/11 职场文书
村主任群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
小学德育工作总结2015
2015/05/12 职场文书
社区安置帮教工作总结2015
2015/05/20 职场文书
图文详解Nginx版本平滑升级方案
2021/09/15 Servers