Как получить сведения о Web-обозревателе
Оглавление
Как получить сведения о Web-обозревателе
Страница 2
Страница 1 из 2
Проблема
Я хочу вывести на Web-страницу сведения о Web-обозревателе клиента, в
частности, его название и версию. Можно ли мне их выяснить и, если можно, то
как?
Решение
Воспользоваться объектом navigator. Все свойства этого объекта вместе с их
описаниями приведены в табл. 3.2.
Таблица 3.2. Свойства объекта navigator
Свойство |
Описание |
appCodeName |
Возвращает имя исходного кода программного ядра Web-обозревателя.
Полное описание возвращаемого этим свойством значения приведено далее в
тексте книги |
appName |
Возвращает имя программы Web-обозревателя. Полное описание
возвращаемого этим свойством значения приведено далее в тексте
книги |
appVersion |
Возвращает версию программы Web-обозревателя. Полное описание
возвращаемого этим свойством значения приведено далее в тексте
книги |
browserLanguage |
Возвращает код языка программы Web-обозревателя (например, "ru" для
русского языка, "en" для английского и пр.). Поддерживается только
Internet Explorer, начиная с версии 4.0, и Opera |
cookieEnabled |
Возвращает true, если Web-обозревателю разрешен пользователем прием
cookie. Поддерживается только Internet Explorer, начиная с версии
4.0 |
cpuClass |
Возвращает класс процессора клиентского компьютера, например, "х86" или
"Alpha". Поддерживается только Internet Explorer, начиная с версии
4.0 |
language |
Возвращает код языка программы Web-обозревателя. Поддерживается только
Firefox и Opera |
onLine |
Возвращает true, если клиент в настоящий момент подключен к Интернету
(находится в режиме on-line), и false, если отключен от него (off-line).
Поддерживается только Internet Explorer, начиная с версии 4.0, и
Firefox |
platform |
Возвращает обозначение операционной системы клиента, например,
"Win32" |
systemLanguage |
Возвращает код языка операционной системы клиента. Поддерживается
только Internet Explorer, начиная с версии 4.0 |
userAgent |
Возвращает строку, идентифицирующую Web-обозреватель клиента. Полное
описание возвращаемого этим свойством значения приведено далее в тексте
книги |
userLanguage |
То же самое, что browserLanguage. Поддерживается только Internet
Explorer, начиная с версии 4.0, и Opera |
Объект navigator поддерживает, кроме того, метод javaEnabled(), возвращающий
true, если Web-обозреватель может выполнять Web-сценарии JavaScript. Этот метод
весьма полезен, поскольку пользователь может отключить исполнение Web-сценариев
в настройках безопасности Web-обозревателя.
А теперь нужно дать пояснения по поводу некоторых из приведенных в
Табл. 3.2 СВОЙСТВ. Всего ЭТИХ СВОЙСТВ четыре: appCodeName, appName,
appVersion И userAgent.
Начнем со свойства appCodeName. Для всех Web-обозревателей оно вернет строку
"Mozilla" — название старой программы, на исходном коде которой основаны все
современные Web-обозреватели. Современный Web-обозреватель Mozilla (ныне —
SeaMonkey) — это, можно сказать, дальнейшее развитие старого Mozilla.
Фактически свойство appCodeName— дань памяти современных Web-обозревателей
"старичкам". Но для нас оно совершенно бесполезно.
Со свойствами appName, appVersion И userAgent все МНОГО сложнее. Для каждой
из рассмотренных в книге программ возвращаемые ими значения будут разными.
Начнем со свойства appName. Возвращаемые им строковые значения будут
такими:
"Microsoft Internet Explorer" для Internet Explorer и Opera в режиме
совместимости с Internet Explorer 6.0;
"Netscape" для Mozilla, Firefox, Navigator и Opera в режиме совместимости с
Mozilla 5.0;
"Opera" для Opera в режиме представления "своим именем".
Народ замечает
Обратим внимание, что для Mozilla, Firefox и Opera в режиме совместимости с
Mozilla 5.0 значение свойства appName будет равно "Netscape". Дело в том,
что
Web-обозреватели Mozilla и Firefox основаны на исходных текстах Netscape
Navigator.
Теперь обратимся к свойству appversion. Для Internet Explorer возвращаемое
этим свойством значение будет иметь такой вид:
кВерсия исходного кода ядра> (compatible; <Версия>;<Операционная
система>)
На компьютере автора значение свойства appversion таково:
4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Народ поясняет
Windows NT 5.1 — это Windows XP. Windows 2000 будет обозначаться как Windows
NT 5.0. Строка ".NET CLR 1.1.4322" обозначает версию установленной на компьютере
исполняющей среды Microsoft .NET. Что обозначает строка "SV1", автору книги
установить не удалось.
Перейдем к Opera. Если в ее настройках задан режим совместимости с Internet
Explorer 6.0, значение свойства appversion будет немного другим. Вот его
формат:
<Версия исходного кода ядра> (compatible; MSIE 6.0;< Операционная
система>; <Язык>)
Например:
4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru)
В случае если мы включим режим совместимости Opera с Mozilla 5.0 (имеются в
виду Web-обозреватели, построенные на основе исходного кода старого Mozilla
версии 5.0), получим значение, формат которого таков:
кВерсия исходного кода ядра> (<Операционная система>; U|I;
<Язык>)
Например:
5.0 (Windows NT 5.1; U; ru)
Народ замечает
Буква "U" в приведенном выше формате значения свойства appversion, по идее,
обозначает американскую версию программы, а буква "I" — интернациональную. В
реальности же там почему-то всегда присутствует буква "U".
В случае если в настройках Opera задан режим "представления своим именем", мы
получим такое значение:
<Версия Ореrа> (<Операционная система>; U|I; <Язык>)
Например:
8.54 (Windows NT 5.1; U; ru)
Пред. - След. »