Если вы перечислите все window.navigator
свойства, используя
console.log(navigator);
Вы увидите что-то подобное
# platform = Win32
# appCodeName = Mozilla
# appName = Netscape
# appVersion = 5.0 (Windows; en-US)
# language = en-US
# mimeTypes = [object MimeTypeArray]
# oscpu = Windows NT 5.1
# vendor = Firefox
# vendorSub = 1.0.7
# product = Gecko
# productSub = 20050915
# plugins = [object PluginArray]
# securityPolicy =
# userAgent = Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7
# cookieEnabled = true
# javaEnabled = function javaEnabled() { [native code] }
# taintEnabled = function taintEnabled() { [native code] }
# preference = function preference() { [native code] }
Обратите внимание, что oscpu
атрибут дает вам версию для Windows. Также вы должны знать, что:
'Windows 3.11' => 'Win16',
'Windows 95' => '(Windows 95)|(Win95)|(Windows_95)',
'Windows 98' => '(Windows 98)|(Win98)',
'Windows 2000' => '(Windows NT 5.0)|(Windows 2000)',
'Windows XP' => '(Windows NT 5.1)|(Windows XP)',
'Windows Server 2003' => '(Windows NT 5.2)',
'Windows Vista' => '(Windows NT 6.0)',
'Windows 7' => '(Windows NT 6.1)',
'Windows 8' => '(Windows NT 6.2)|(WOW64)',
'Windows 10' => '(Windows 10.0)|(Windows NT 10.0)',
'Windows NT 4.0' => '(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)',
'Windows ME' => 'Windows ME',
'Open BSD' => 'OpenBSD',
'Sun OS' => 'SunOS',
'Linux' => '(Linux)|(X11)',
'Mac OS' => '(Mac_PowerPC)|(Macintosh)',
'QNX' => 'QNX',
'BeOS' => 'BeOS',
'OS/2' => 'OS/2',
'Search Bot'=>'(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask Jeeves/Teoma)|(ia_archiver)'
Я начал писать Script для чтения ОС и версии браузера, которые можно протестировать на Fiddle . Не стесняйтесь использовать и расширять.
источник
источник
Решение @Ludwig было блестящим. Несколько исправлений (которые не имели отношения к операционной системе, и я не смог разместить комментарий к его исходному посту, потому что это слишком долго):
Они здесь:
источник
У JavaScript есть доступ к
window.navigator.platform
- строке, представляющей платформу браузера: https://developer.mozilla.org/en/DOM/window.navigator.platformИспользуйте его, чтобы извлечь все детали, которые вам нужны (и можете). Обратите внимание, что нет никаких гарантий, что клиент фактически использует эту платформу, поскольку ее можно легко изменить многими способами.
источник
Платформа.js кажется хорошей файловой библиотекой для этого.
Пример использования:
источник
Вы можете использовать эту
javascript
функцию, чтобы проверить пользовательскую ОС простоисточник
Вы можете найти имя и версию ОС в
navigator
объекте, как уже ответили другие. Стандартное кросс-браузерное место для поиска этой информации находится вnavigator.userAgent
собственности. Однако строки пользовательских агентов сильно различаются в зависимости от ОС и браузера.Итак, я создал скрипт, который инкапсулирует эту логику и знакомым образом сообщает о наиболее распространенных ОС и браузерах, например, http://www.whatsmybrowser.org. .
Я открыл скрипт и загрузил его на github, https://github.com/keithws/browser-report . Запросы на тягу приветствуются!
источник
Я создал библиотеку для разбора строк User Agent под названием Voodoo . Но помните, что это не должно должно использоваться вместо обнаружения функций.
Что делает Voodoo, так это то, что он анализирует строку userAgent, которая находится в объекте Navigator (window.navigator). Не все браузеры передают надежную строку userAgent, поэтому, несмотря на то, что это обычный способ, userAgent не всегда можно доверять.
источник
Я раскошелиться @Ludwig кода и удалить необходимость
swfobject
.Я просто использую код swfobject для определения версии флэш.
источник
Используйте deteOS.js :
источник
Я не могу комментировать ответ @Ian Ippolito (потому что я бы получил, если бы у меня был представитель), но согласно документу, на который он ссылался, я вполне уверен, что вы можете найти версию Chrome для IOS. https://developer.chrome.com/multidevice/user-agent?hl=ja перечисляет UA как: Mozilla / 5.0 (iPhone; CPU iPhone OS 10_3 как Mac OS X) AppleWebKit / 602.1.50 (KHTML, как Gecko) CriOS / 56.0.2924.75 Mobile / 14E5239e Safari / 602.1
Так что это должно работать:
Я не смог протестировать (иначе я бы улучшил его ответ), чтобы убедиться, что мой iPad дома, а я на работе, но я подумал, что я его выложу.
источник
Привет для быстрого решения вы можете рассмотреть следующую библиотеку: UAPARSER - https://www.npmjs.com/package/ua-parser-js
пример :
Вы также можете установить библиотеку через npm и импортировать ее следующим образом:
библиотека представляет собой анализатор строк пользовательского агента на основе JS (window.navigator.userAgent - агент пользователя в браузере), поэтому вы можете получить с ней и другие детали, такие как браузер, устройство, механизмы и т. д., и она может работать с узлом js также.
если вам нужно набрать для библиотеки: https://www.npmjs.com/package/@types/ua-parser-js
источник