Иллюстрированный самоучитель по Adobe GoLive 6

Объектная модель

Как мы говорили, объект window является основой всей общей иерархии, и все остальные объекты входят в его состав. Эти дочерние объекты мы можем разделить на два типа. Одни из них открывают доступ к частям отображаемой Web-страницы, а другие позволяют нам оперировать отдельными элементами самого браузера. Вот с этих объектов мы и начнем.

Объект location предоставляет нам доступ к URL текущей Web-страницы. Прежде всего, мы рассмотрим описание его свойств.

  • Свойство href – содержит URL текущего документа. Если в процессе работы программы-скрипта этому свойству придается новое значение в виде URL, то браузер автоматически загружает в окно просмотра документ, находящийся по этому адресу.
  • Свойство hostname – имя Web-сервера, указанное в URL, не включающее в себя явно указанный номер порта, на котором функционирует этот Web-сервер.
  • Свойство host – имя Web-сервера объединенное с номером порта, если тот указан явно.
  • Свойство port – номер порта, на котором функционирует Web-сервер, чье имя указано в URL данного документа.
  • Свойство pathname – путь к HTML-документу в файловой системе сервера.
  • Свойство hash – имя локальной гиперссылки, не включающее в себя знак #.

Как видно, при помощи этих свойств мы можем полностью разобрать URL документа на составляющие. Что делать с ними потом, каждый решает для себя сам.

У объекта location есть и методы. Их всего три:

  • Метод reload позволяет осуществлять принудительную перезагрузку данного HTML-документа.
  • Метод replace (uri) загружает в окно просмотра браузера новый HTML-документ, URL которого передается в метод в качестве параметра. При этом изменяется и объект history.
  • Метод assign (uri) переназначает URL для данного окна просмотра, но принудительного перехода по новому адресу, который передается в качестве параметра, не производится.

Каких-либо специфичных событий объект location не имеет.

Адреса всех посещенных Web-ресурсов записываются в один список, и перемещение между ними осуществляется при помощи кнопок Back (Назад) и Forward (Вперед) любого браузера. Этот список доступен при помощи объекта с наименованием history. Обычно применяется три метода этого объекта.

  • Метод forward () загружает следующий документ из списка загруженных ранее документов, фактически, аналог нажатия удаленным пользователем кнопки Forward (Вперед) в своем браузере.
  • Метод back о загружает предыдущий документ из общего списка. Дублирует кнопку браузера Back (Назад).
  • Метод go (offset) смешается по списку на величину, которая передается в параметре и загружает документ с данным URL. При положительном значении параметра смещение происходит вперед по списку, при отрицательном – назад.

Длина списка URL посещенных Web-страниц хранится в свойстве length.

Теперь рассмотрим объект navigator, предназначенный для получения данных об используемом, удаленным пользователем, браузере. Существование этого объекта обусловлено тем, что в результате "браузерных войн" основные браузеры Internet Explorer и Netscape Navigator по-разному интерпретируют некоторые тега HTML. У них не совпадают иерархии объектов, используемых в сценариях. Именно потому, если мы хотим создать HTML-документ, который будет максимально адекватно отображается в обоих основных браузерах, мы должны получить информацию об используемом браузере, и на ее основании формировать страницу. Свойства объекта navigator перечислены в следующем списке.

  • Свойство appName содержит наименование браузера.
  • Свойство appveysion – номер версии браузера.
  • Свойство appCodeName – наименование технологии, на которой работает браузер, часто называемой "движком" (engine).
  • Свойство cookieEnabied указывает на то, разрешено ли сохранение cookie в данном браузере.
  • Свойство us Agent содержит наименование браузера в том виде, в котором оно передается при помощи HTTP-протокола.

В состав Объекта navigator входит еще Два Объекта: mimeTypes И plugins, которые на самом деле являются не просто объектами, а коллекциями. Коллекция mimeTypes содержит различные типы MIME (способы кодирования передаваемой информации), которые используются данным браузером. А при помощи коллекции plugins мы можем получить доступ к любому расширению браузера, установленному в качестве дополнения к стандартной поставке.

Помимо знания используемого браузера необходимо иметь информацию об установленном разрешении монитора удаленного пользователя. Для этого мы можем использовать свойства объекта screen.

  • width – разрешение экрана по горизонтали.
  • height – разрешение экрана по вертикали.
  • coiorDepth – количество битов, используемых для указания цвета каждого пиксела. То есть, по сути это, глубина цвета.
  • update interval – частота обновления экрана.

Данный-объект не имеет даже методов, так как вея работа с ним происходит путем изменения значений его свойств.

Мы видели, что большинство рассмотренных нами объектов не имеет обособленных событий. Связано это с тем, что большинство событий, происходящих при работе браузера, обрабатывается при помощи специализированного объекта event, который и несет информацию о большинстве подобных событий. В любой момент мы можем обратиться к одному из его свойств и получить информацию о каком-либо изменении статуса или произошедшем действии пользователя.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.