js判断浏览器类型的方法


Posted in Javascript onAugust 07, 2013

代码如下:

var isIE=!!window.ActiveXObject; 
var isIE6=isIE&&!window.XMLHttpRequest; 
var isIE8=isIE&&!!document.documentMode; 
var isIE7=isIE&&!isIE6&&!isIE8; 
if (isIE){ 
    if (isIE6){ 
        alert(”ie6″); 
    }else if (isIE8){ 
        alert(”ie8″); 
    }else if (isIE7){ 
        alert(”ie7″); 
    } 
}

上述是一般常用的JavaScript用来检测浏览器为IE哪个版本的代码。

而由于今年1月一位俄国人,利用了IE与标准浏览器在处理数组的toString方法的差异,完美的利用6bytes:!-[1,]完成了对是否为IE浏览器的检测 。而之前最短代码为:!+”\v1″的7bytes。利用这些发现我们同样可以使我们的代码写的更短更有艺术。如今检测是否为IE6其实可以写成

!-[1,]&&!window.XMLHttpRequest

这个代码在实际使用中还是颇为有用的,既然能写的更短何乐而不为呢。相对于之前那大段累赘的分析navigator然后正则比较的方式当然效率更高,代码更简洁完全没有不用道理。在JavaScript编写过程中应该多多的利用诸如||、&&、!、!!这类的运算符,不光是在if()这样的情况下。

Javascript 相关文章推荐
收藏一些不常用,但是有用的代码
Mar 12 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
May 07 Javascript
js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
Dec 17 Javascript
JS限制条件补全问题实例分析
Dec 16 Javascript
js 数据存储和DOM编程
Feb 09 Javascript
JavaScript实现多重继承的方法分析
Jan 09 Javascript
vue scroller返回页面记住滚动位置的实例代码
Jan 29 Javascript
基于Axios 常用的请求方法别名(详解)
Mar 13 Javascript
微信小程序日期选择器实例代码
Jul 18 Javascript
Node.js console控制台简单用法分析
Jan 04 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
Oct 12 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
Nov 02 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
Aug 07 #Javascript
图片上传判断及预览脚本的效果实例
Aug 07 #Javascript
Javascript alert消息换行的方法
Aug 07 #Javascript
JavaScript中圆括号()和方括号[]的特殊用法疑问解答
Aug 06 #Javascript
javascript 获取模态窗口的滚动位置代码
Aug 06 #Javascript
JS this作用域以及GET传输值过长的问题解决方法
Aug 06 #Javascript
JS常见问题整理(持续更新)
Aug 06 #Javascript
You might like
php&mysql 日期操作小记
2012/02/27 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
php使用array_search函数实现数组查找的方法
2015/06/12 PHP
php 数组处理函数extract详解及实例代码
2016/11/23 PHP
BOOM vs RR BO3 第二场2.13
2021/03/10 DOTA
javascript之卸载鼠标事件的代码
2007/05/14 Javascript
js取滚动条的尺寸的函数代码
2011/11/30 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
2013/04/02 Javascript
JS获取月的最后一天与JS得到一个月份最大天数的实例代码
2013/12/16 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
2015/05/25 Javascript
JS中dom0级事件和dom2级事件的区别介绍
2016/05/05 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
JavaScript实现时钟滴答声效果
2017/01/29 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
2017/05/03 Javascript
Javascript 一些需要注意的细节(必看篇)
2017/07/08 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
原生JS实现留言板功能
2020/02/08 Javascript
[03:41]DOTA2上海特锦赛小组赛第三日recap精彩回顾
2016/02/28 DOTA
Python内置数据结构与操作符的练习题集锦
2016/07/01 Python
Python中第三方库Requests库的高级用法详解
2017/03/12 Python
python 将print输出的内容保存到txt文件中
2018/07/17 Python
python创建文件备份的脚本
2018/09/11 Python
python设计tcp数据包协议类的例子
2019/07/23 Python
python文件操作的简单方法总结
2019/11/07 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
python3中确保枚举值代码分析
2020/12/02 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
奢华时尚的创新平台:Baltini
2020/10/03 全球购物
史上最全面的Java面试题汇总!
2015/02/03 面试题
十八届三中全会感言
2014/03/10 职场文书
《长江之歌》教学反思
2014/04/17 职场文书
仅用一句SQL更新整张表的涨跌幅、涨跌率的解决方案
2021/05/06 MySQL
Oracle11g R2 安装教程完整版
2021/06/04 Oracle
Python预测分词的实现
2021/06/18 Python