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 相关文章推荐
javascript 二分法(数组array)
Apr 24 Javascript
js返回上一页并刷新代码整理
Dec 21 Javascript
使用javascript实现ListBox左右全选,单选,多选,全请
Nov 07 Javascript
JavaScript AJAX之惰性载入函数
Aug 27 Javascript
基于javascript实现动态显示当前系统时间
Jan 28 Javascript
Uploadify上传文件方法
Mar 16 Javascript
基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
May 10 Javascript
jQuery UI结合Ajax创建可定制的Web界面
Jun 22 Javascript
js获取css的各种样式并且设置他们的方法
Aug 22 Javascript
Express 配置HTML页面访问的实现
Nov 01 Javascript
在vue项目中封装echarts的步骤
Dec 25 Vue.js
如何利用JavaScript实现二叉搜索树
Apr 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
轻松入门: 煮好咖啡的七个诀窍
2021/03/03 冲泡冲煮
用php写的serv-u的web申请账号的程序
2006/10/09 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
2013/06/01 PHP
PHP远程采集图片详细教程
2014/07/01 PHP
destoon实现调用图文新闻的方法
2014/08/21 PHP
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
2006/09/22 Javascript
javascript中的一些注意事项 更新中
2010/12/06 Javascript
JavaScript下通过的XMLHttpRequest发送请求的代码
2011/06/28 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
jquery1.9 下检测浏览器类型和版本的方法
2013/12/26 Javascript
jQuery操作表格(table)的常用方法、技巧汇总
2014/04/12 Javascript
jQuery中size()方法用法实例
2014/12/27 Javascript
js操作滚动条事件实例
2015/01/29 Javascript
完美实现bootstrap分页查询
2015/12/09 Javascript
两种JavaScript的AES加密方式(可与Java相互加解密)
2016/08/02 Javascript
VueJS全面解析
2016/11/10 Javascript
JS获取当前地理位置的方法
2017/10/25 Javascript
Node.js实现发送邮件功能
2017/11/06 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
2019/06/18 jQuery
js tab栏切换代码实例解析
2019/09/03 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
详解Python3中的Sequence type的使用
2015/08/01 Python
对python字典元素的添加与修改方法详解
2018/07/06 Python
Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
2018/07/18 Python
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
微软中国官方商城:Microsoft Store中国
2018/10/12 全球购物
组工干部演讲稿
2014/09/02 职场文书
终止劳动合同通知书
2015/04/16 职场文书
重阳节主题班会
2015/08/17 职场文书
小学信息技术教学反思
2016/02/16 职场文书
详解Spring Security如何在权限中使用通配符
2022/06/28 Java/Android