Сценарии JavaScript в активных страницах Web

Вариация седьмая: с определением типа браузера


Последний пример сценария, который мы рассмотрим в этом разделе, показывает, как программа JavaScript может легко определить тип и версию браузера. На рис. 1.6 показан результат просмотра документа HTML с этим сценарием при помощи браузера Microsoft Internet Explorer.

Рис. 1.6. Информация о браузере Microsoft Internet Explorer

То, что вы увидите, просмотрев этот же документ браузером Netscape Navigator, представлено на рис. 1.7.

Рис. 1.7. Информация о браузере Netscape Navigator

Давайте посмотрим на текст сценария, позволяющего извлекать подобную информацию. Он представлен в листинге 1.8.

Листинг 1.8. Файл chapter1/HelloInfo/HelloInfo.html

<HTML>

  <HEAD>

    <TITLE>Hello, world!</TITLE>

  </HEAD>

  <BODY BGCOLOR=white>



    <H1>Something about you...</H1>

    <TABLE>

    <SCRIPT LANGUAGE="JavaScript">

    <!--

      document.writeln("<TR><TD>Navigator Name:</TD><TD>"

        + navigator.appName.bold() + "</TD></TR>");

      document.writeln("<TR><TD>Navigator Code Name:</TD><TD>"

        + navigator.appCodeName.bold() + "</TD></TR>");

      document.writeln("<TR><TD>Navigator version:</TD><TD>"

        + navigator.appVersion.bold() + "</TD></TR>");

      document.writeln("<TR><TD>User agent:</TD><TD>"

        + navigator.userAgent.bold() + "</TD></TR>");

    // -->

    </SCRIPT>

    </TABLE>

  </BODY>

</HTML>

Здесь сценарий JavaScript формирует в документе HTML строки таблицы, записывая в них названия различных свойств объекта navigator и значения, соответствующие этим свойствам.

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

Наиболее интересны для нас свойства  navigator.appName и navigator.appVersion, так как они позволяют однозначно определить тип браузера и его версию. Обладая этой информацией, вы можете динамически “приспособить” документ HTML к навигатору, установленному у пользователя.

Заметим, что в браузере Microsoft Internet Explorer реализован еще один метод определения версии браузера, который мы рассмотрим позже. К сожалению, этот метод несовместим с браузером Netscape Navigator.



Содержание раздела