2011-07-01 104 views
2

我試圖從Javascript中使用navigator.cpuClass獲取訪問者的CPU類型,以便爲他們提供正確的下載。在我的測試中,當遇到「Win64」時,我遇到了一個返回「Win32」的navigator.cpuClass示例。在我的PC返回系統的系統信息工具:navigator.cpuClass爲什麼不正確?

Intel64位的家族6型號15步進11 GenuineIntel〜2400兆赫(Q6600),後者進一步說明: http://ark.intel.com/Product.aspx?id=29765

誰能告訴我,爲什麼JavaScript是沒有看到64位中央處理器?我需要可靠地檢測到CPU ...

+1

只是提供你有什麼讓用戶決定他們想要什麼。 – RobG

回答

5

也許你正在使用32位瀏覽器。嘗試使用here中的示例,即使我運行的是64位操作系統(使用32位版本的Chrome),也得到了相同的結果(Win32)。

但是,就我而言,Chrome的appVersion字符串表示它在Wow64仿真層下運行。也許你可以爲其他瀏覽器找到這樣的提示。

通常,您無法可靠地檢測到CPU類別,因爲您永遠不知道您的瀏覽器是使用紅色還是藍色的藥片。

實用的解決方案是根據瀏覽器返回的內容提供默認選項,並允許用戶切換到64位版本。由於大多數32位軟件在64位環境中完美運行(如本例所證明的),大多數用戶不會注意到他們是否選擇了「錯誤」下載。

+0

我也從navigator.appVersion獲得WOW64。我將不得不測試一下,看看。看起來這可能是更好的提示。 – Taptronic

+1

@Optimal解決方案:我添加了一些筆記。 –

+0

謝謝你的建議! – Taptronic