Объект Navigator

  




  

Прием в авторские монографии до 20 марта 2016 г.

Объект navigator содержит информацию об используемой в настоящее время версии браузера. Этот объект применяется для получения информации о версиях.

События не определены для этого объекта. Свойства только для чтения, так как ресурс с информацией о версии недоступен для редактирования. Этот объект, однако, поддерживает метод javaEnabled(), который возвращает true, если Web-обозревателю разрешено пользователем выполнение сценариев JavaScript.

Как известно, Internet Explorer и Navigator отличаются настолько, что для них приходится готовить разные Web-страницы. Internet Explorer поддерживает такие возможности, которые не поддерживает Navigator, и наоборот. Даже в зависимости от номера версии обозревателя зависит, поддерживает ли он определённые методы, свойства.

Возникает проблема: как сделать страницы, совместимые с разными программами Web-обозревателя, с их различными версиями?

Для этого необходимо в зависимости от обозревателя (его версии) обрабатывать тот или иной участок кода. А для определения обозревателя (номера версии) можно использовать свойства объекта navigator. А именно, свойства appName и appVersion.

Рассмотрим пример:

Пример 17 …
document.write("Имя кода программы: "+ window.navigator.appCodeName);
document.write("<br>");
document.write("Имя программы: "+ navigator.appName);
document.write("<br>");

В первой строке, рядом с текстом «Имя кода программы» будет выведено кодовое название Web-обозревателя. Напомним, что и для Internet Explorer и NetscapeNavigator кодовое название – «Mozilla». Вторая строка необходима, для того, чтобы следующая строка начиналась с новой строки (т.е. вставляется разрыв строки текста).

Следующая строка выводит непосредственно имя программы в привычном для нас виде (например: Internet Explorer и Netscape). …
sv=navigator.appVersion;
aname=navigator.appName;

В данных строках в переменные sv и aname возвращены значения версии программы и имени программы Web-обозревателя соответственно. Остановимся подробнее на свойстве appVersion, точнее на возвращаемом им значении. Дело в том, что, у разных программ оно будет разным.

У Navigator оно имеет следующий формат:

{Версия}[{Язык}]({Операционная система};U|I)

Здесь {Версия} представляет собственно версию Web-обозревателя, {язык} – язык программы (может отсутствовать), {операционная система} – обозначение операционной системы клиента, например «Win95», «Win16» или «WinNT», буква «U» - американскую версию программы, а «I» - интернациональную.

Например, может быть возвращено такое значение:

4.0 [ru] (Win95; I)

А у Internet Explorer формат свойства appVersion заметно отличается.

{Совместимая версия Navigator} (compatible; {Версия}; {Операционная система})

Здесь {Операционная система} может принимать значения «Windows 3.1», «Windows 3.11», «Windows 95» или «Windows NT».

Например, так:

2.0 (compatible; 3.01;Win95)

Итак, в переменной sv содержится значение версии программы Web-обозревателя, но мы не знаем как нам его интерпретировать – как для Netscape или как для Internet Explorer. Для этого необходимо проанализировать имя программы обозревателя (оно содержится в переменой aname), и в зависимости от результатов анализа, произвести интерпретацию строки, содержащейся в переменной sv.

Если обозревателем клиента является Internet Explorer, то для определения класса процессора можно использовать свойство cpuClass, хотя информация такого рода используется очень редко. Также можно использовать данный объект для получения такой информации как: код языка Web-обозревателя, платформы пользователя, системный язык, подключён ли пользователь к Интернету или нет, узнать о поддержке JavaScript. Например: …
document.write("Имя обозревателя: " +navigator.appName+"<br>");
document.write("Версия обозревателя: " +navigator.appVersion+"<br>");
document.write("Процессор: "+navigator.cpuClass);
document.write("<br>");
if (navigator.onLine) document.write('Режим on-line');
else document.write('Режим off-line');
document.write("<br>");
document.write("Платформа клиента: "+navigator.platform);
document.write("<br>");
document.write("Язык операционной системы: "+navigator.systemLanguage);
document.write("<br>");
document.write("Язык Web-обозревателя: "+navigator.browserLanguage);
document.write("<br>");
if (navigator.javaEnabled()) document.write('Разрешено выполнение Java-сценариев');
else document.write('Не разрешено выполнение Java-сценариев');

Итак, в зависимости от Web-обозревателя необходимо обрабатывать разные участки кода. Как анализировать имя и версию будет рассмотрено ниже при знакомстве с объектом string.

В заключении рассмотрения объектов браузера скажем несколько слов об объекте screen.

  

Rambler's Top100

  

Кравец Вера Владимировна
Главный редактор
vkravets@vsi.ru
vkravets@naukapro.ru

  
Кравец Вера Владимировна
vkravets@naukapro.ru

Спасибо за проявленный интерес!
Все права защищены. Copyright © 2006-2020. Вера Кравец.