Подтвердить что ты не робот

Обнаружение IE8 64-бит в Javascript

Эй, Я просто задавался вопросом, есть ли способ определить, работает ли 64-битная или 32-разрядная версия IE8?

Потому что есть некоторые основные ошибки в Javascript SDK для Facebook, которые встречаются только в IE8x64...

4b9b3361

Ответ 1

В соответствии с этим сообщением IEBlog вы сможете прочитать его из браузеров Строка User-Agent через navigator.userAgent:

Обнаружение 64-разрядного обозревателя Internet Explorer

Поскольку машины с более чем 4 гигабайтами оперативной памяти становятся все более распространенными, все больше пользователей работают под 64-разрядными версиями Windows. Для совместимости с сторонними надстройками 32-разрядная версия Internet Explorer по умолчанию остается в 64-разрядных системах. Однако в некоторых случаях может быть полезно, когда веб-сайты узнают, когда пользователи посещают с помощью 64-битных систем - например, сайт может захотеть узнать, предлагать ли 64-разрядную загружаемую версию.

Токены в строке User-Agent позволят вам определить, работает ли у пользователя 64-разрядная версия Windows и работает ли она в 64-разрядной версии Internet Explorer.

64-разрядный IE в 64-разрядной Windows:

Mozilla/4.0 (совместимо; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0)

32-разрядный IE в 64-битной Windows:

Mozilla/4.0 (совместимо; MSIE 8.0; Windows NT 6.0; WOW64; Trident/4.0)

Кстати, WOW64 означает "Windows на Windows 64-bit".

Ответ 2

Строка User Agent для 64-битного браузера IE указывает, что это "x64" или "Win64", если это 64-разрядный браузер.

http://blogs.msdn.com/b/ie/archive/2009/01/09/the-internet-explorer-8-user-agent-string-updated-edition.aspx

64-разрядная строка пользовательского агента IE8:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0)

против. 32-разрядный

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; WOW64; Trident/4.0)

Ответ 3

Для 64-битного IE на 64-битной Windows window.navigator.platform будет "Win64", а window.navigator.cpuClass будет "x64".

Для 32-разрядного IE на 64-битной Windows window.navigator.platform будет "Win32", а window.navigator.cpuClass будет "x86".

Для 32-разрядной версии Windows (которая, следовательно, должна работать с 32-разрядным IE) window.navigator.platform будет "Win32", а window.navigator.cpuClass будет undefined (я думаю).

-

Источник: Я сделал приложение, которое использует JavaScript, чтобы определить, использует ли кто-то 32-битный или 64-разрядный процессор. Вы можете увидеть здесь код GitHub.