|
下面是兩個比較典型的IE6瀏覽器UserAgent字段:
1、Windows XP + SP1 (NT 5.1)
Connection: Keep-Alive
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-cn
Host: zhilee.aehk.com
Referer: http://www.cnblogs.com/birdshome/archive/2005/03/11/113723.html
User-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)
Connection: Keep-Alive
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-cn
Host: zhilee.aehk.com
Referer: http://www.cnblogs.com/bluefee/archive/2005/03/28/127455.html
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)
UA-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版本,只是一個臨時的辦法。
var ua = navigator.userAgent;
if ( ua.indexOf("SV1") != -1 )
{
if ( ua.indexOf("NT 5.1") != -1 )
{
// windows xp + sp2
}
else if ( ua.indexOf("NT 5.2") != -1 )
{
// windows 2003 + sp1
}
else
{
// wrong user agent string
}
}
JavaScript技術:用js判斷用戶瀏覽器是否是XP SP2的IE6,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。