2012-12-08 27 views
0

我最近發現,你可以用它來檢測Windows版本:有條件的評論來檢測Windows版本?

但是什麼樣的價值觀呢WindowsEdition用呢?

基本上我試圖使用條件註釋來檢測Internet Explorer的用戶是否在支持升級到IE9或更高版本的Windows版本上。我希望能夠檢測到「Windows XP及更低版本」和「Windows Vista及更高版本」之間的差異。

這樣做的目的是引導IE7及以下用戶更新IE9/10,或者如果他們的操作系統不支持IE9,則切換到Chrome/Firefox。這樣做的原因是,該網站在IE8中工作,但缺少許多CSS功能,因此它只是一句話,「醜陋但可用」。

+0

我認爲Windows本身已經這樣做了(IE強制升級)。如果我沒有弄錯,任何不支持IE9的Windows版本都不支持Chrome。我真的很想知道,有多少人真正安裝新的瀏覽器只是因爲一個網站有點醜陋(除非他們使用的很重要,比如Gmail/Facebook或其他)。 –

+0

也許這個幫助:http://stackoverflow.com/questions/4006420/detect-windows-version-with-javascript –

+0

@WesleyMurch,'windows xp'不支持'IE9',但支持'Chrome'。 –

回答

1

只有Windows Vista或更新版本纔會將值返回給WindowEdition條件註釋。

Conditional Comment Wikipedia page

對應的Windows的版的整數用來查看該網頁。如果值與正在使用的版本相匹配,則返回布爾值true。有關支持的值及其描述的版本的信息,請參閱GetProductInfo函數的pdwReturnedProductType參數。

重點是我的。通過版本,他們的意思是家庭,家庭起始者,專業人員,終極等。

GetProductInfo function的MSDN頁面支持此操作。該頁面還列出了GetProductInfo的輸入參數,其中包括

dwOSMajorVersion [中]

操作系統的主版本號。最小值是6.

版本6對應於Vista,所以我懷疑Windows XP和XP以前版本的Windows沒有這個GetProductInfo函數,不能調用它並且不會返回任何東西來比較有條件的評論在IE中。

+0

所以我可以做'<! - [if!WindowsEdition]>切換到Firefox/Chrome <! - [如果WindowsEdition]>升級到IE9! '?那很完美。謝謝! –