判断用户浏览器是否是XP SP2的IE6

由于Windows XP的补丁SP2,对IE6的安全性也做了很多的提升,使得有不少原来我们可以使用的功能,会变得很奇怪甚至歇菜掉:(。特别是弹出窗口、模态窗口和Popup窗口等受的影响相当大。那么我能不能判断用户使用的IE6是普通IE6(IE6sp1)还是IE6+xp sp2呢?

    下面是两个比较典型的IE6浏览器UserAgent字段:

    1、Windows XP + SP1 (NT 5.1)
None.gifConnection: Keep-Alive
None.gifAccept: */*
None.gifAccept-Encoding: gzip, deflate
None.gifAccept-Language: zh-cn
None.gifHost: zhilee.aehk.com
None.gifReferer: http://www.cnblogs.com/birdshome/archive/2005/03/11/113723.html
None.gifUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;  SV1; .NET CLR 1.1.4322)

    2、Windows 2003 + SP1 (NT 5.2)
None.gifConnection: Keep-Alive
None.gifAccept: */*
None.gifAccept-Encoding: gzip, deflate
None.gifAccept-Language: zh-cn
None.gifHost: zhilee.aehk.com
None.gifReferer: http://www.cnblogs.com/bluefee/archive/2005/03/28/127455.html
None.gifUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2;  SV1; .NET CLR 1.1.4322)
None.gifUA-CPU: x86

    这两个UA string和普通的UA string最大区别就是,里面多了一个"SV1"标志,这个是什么意思呢?SV1的本意是 "Security Version 1",它就是用来专门标注使用IE6浏览器的用户使用的操作系统是否是XPSP2或WS03SP1。

    既然XPSP2和WS03SP1对IE6有影响,为什么不提升IE的版本号,而是单独使用SVX标注呢?IE开发团队是这么解释的,他们说虽然这两个操作系统的补丁对IE6的设置有影响,但是并没有修改IE6本身的任何功能,比如呈现、DHTML和DOM等。所以这样的一些安全设置不适合升级IE本身的版本号。

    在后续的IE版本中,SVX标志可能会被移除,所以目前我们使用UA string检测操作系统的SP版本,只是一个临时的办法。

None.gif var ua = navigator.userAgent;
None.gif if ( ua.indexOf("SV1") != -1 )
None.gif{
None.gif     if ( ua.indexOf("NT 5.1") != -1 )
None.gif    {
None.gif         //  windows xp + sp2
None.gif
    }
None.gif     else  if ( ua.indexOf("NT 5.2") != -1 )
None.gif    {
None.gif         //  windows 2003 + sp1
None.gif
    }
None.gif     else
None.gif    {
None.gif         //  wrong user agent string
None.gif
    }
None.gif}

本文转自博客园鸟食轩的博客,原文链接:http://www.cnblogs.com/birdshome/,如需转载请自行联系原博主。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值