首页 新闻 会员 周边

关于判断ie6的代码问题

0
[已解决问题] 解决于 2013-10-14 10:38

var isIE6 = isIE && ([/MSIE (\d)\.0/i.exec(navigator.userAgent)][0][1] == 6);

我对红色代码有疑问:我知道\d元字符是查找数字,为什么(\d)之后再加个“\”呢?还有,[0][1]是什么意思呢?

zanetti的主页 zanetti | 初学一级 | 园豆:128
提问于:2013-09-22 14:30
< >
分享
最佳答案
0

(\d)\.0/i    

 

(\d)后那个\.中的\是转移字符,也就是再匹配一个小数点 /i 不区分大小写

[0][1]  是一个二维数字(应该就是),取出来的值一个是6

奖励园豆:5
峰笙水崎 | 菜鸟二级 |园豆:211 | 2013-10-13 01:05

二位数字?你是想说“二维数组”吗?

zanetti | 园豆:128 (初学一级) | 2013-10-13 16:20

@zanetti: 恩,是的,你可以测试下啊

先用([/MSIE (\d)\.0/i.exec(navigator.userAgent)]测试下

再用([/MSIE (\d)\.0/i.exec(navigator.userAgent)][0]测试下

最后[/MSIE (\d)\.0/i.exec(navigator.userAgent)][0][1]这个

就知道是什么东西了。

峰笙水崎 | 园豆:211 (菜鸟二级) | 2013-10-14 02:23
其他回答(3)
2

可以参考园子里的文章:JavaScript正则表达式

会长 | 园豆:12401 (专家六级) | 2013-09-22 14:57
-2

(\d)之后再加个“\” ,是转义,表示 匹配 .  

世界万物 | 园豆:276 (菜鸟二级) | 2013-09-22 16:24
0

jquery可以直接判断啊

if ($.browser.msie && ($.browser.version == "6.0") && !$.support.style) {
//代码
}

ExploreForward | 园豆:18 (初学一级) | 2013-09-22 19:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册