Вход/Регистрация
JavaScript. Подробное руководство, 6-е издание
вернуться

Флэнаган Дэвид

Шрифт:

Исторически объект

Navigator
использовался для «опознавания клиента», позволяя выбирать, какой фрагмент программного кода выполнять в зависимости от типа броузера. В примере 14.3 демонстрируется простейший прием, а в сопутствующем ему описании в разделе 14.4 упоминается масса ловушек, которые имеются в объекте
Navigator
. Наилучший способ проверки совместимости, не зависящий от типа броузера, описывается в разделе 13.4.3.

Свойства

readonly string appName

Имя броузера. Для броузеров, созданных на основе Netscape, значение этого свойства равно «Netscape». В Internet Explorer оно равно «Microsoft Internet Explorer». Для совместимости с существующим программным кодом многие броузеры возвращают старую, не соответствующую действительности, информацию.

readonly string appVersion

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

readonly Geolocation geolocation

Ссылка на объект

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

readonly boolean onLine

Имеет значение false, если броузер не будет предпринимать попыток загрузить что-либо из сети. Это может быть обусловлено тем, что броузер выполняется на компьютере, не подключенном к сети, или тем, что пользователь настроил броузер на автономную работу. Если броузер будет предпринимать пытаться загрузить что-либо (потому что компьютер подключен к сети), это свойство будет иметь значение true. Когда значение этого свойства изменяется, броузер возбуждает события «online» и «offline» в объекте

Window
.

readonly string platform

Название операционной системы и/или аппаратной платформы, на которой выполняется броузер. Стандартный набор значений для этого свойства не определен, но вот некоторые типичные значения: «Win32», «МасРРС» и «Linux І586».

readonly string userAgent

Значение, которое броузер подставляет в заголовок user-agent в НТТР-запросах. Например:

Mozilla/5.0 (XII; U; Linux І686; en-US)

AppleWebKit/534.16 (KHTML, like Gecko)

Chrome/10.0.648.45 Safari/534.16

Методы

void registerContentHandler(string mimeType, string url, string title)

Этот метод выполняет запрос на регистрацию url как обработчика, используемого для отображения содержимого типа mimeType. Аргумент title - заголовок сайта, который может отображаться перед пользователем. Аргумент url должен содержать строку «%s*. Когда этот обработчик содержимого должен будет использоваться для обработки веб-страницы указанного типа mimeType, URL-адрес этой веб-страницы будет закодирован и вставлен в url на место «%s». Затем броузер перейдет по получившемуся URL-адресу. Это новый метод, введенный спецификацией HTML5, и он может быть реализован не во всех броузерах.

void registerProtocolHandler(string scheme, string url, string title)

Действует подобно методу

registerContentHandler,
но регистрирует веб-сайт для использования в качестве обработчика схемы протокола scheme, указанного в URL-адресе. Аргумент scheme должен быть строкой, такой как «mailto» или «sms» без двоеточия. Это новый метод, введенный спецификацией HTML5, и он может быть реализован не во всех броузерах.

void yieldForStorageUpdates

Сценарии, использующие объекты

Document.cookie
,
Window.localStorage
и
Window.sessionstorage
(cm.
Storage
и главу 20), не имеют возможности определять, производятся ли изменения в хранилище параллельно выполняющимися в разных окнах сценариями (с тем же происхождением). Броузеры могут (хотя на момент написания этих строк такую возможность поддерживали не все броузеры) предотвратить параллельные изменения с помощью механизма блокировок, подобного тому, что используется в базах данных. В броузерах, поддерживающих такую возможность, этот метод неявно освобождает блокировку, предоставляя возможность сценариям в других окнах сохранить свои изменения. Значения, извлекаемые из хранилища после вызова этого метода, могут отличаться от тех, что извлекались перед его вызовом.

Node

Все объекты в дереве документа (включая сам объект

Document
) реализуют интерфейс
Node
, который предоставляет фундаментальные свойства и узлы для выполнения манипуляций с деревом. Свойство
parentNode
и массив
childNodes[]
позволяют передвигаться вверх и вниз по дереву документа. Можно перечислить дочерние узлы данного узла, выполнив цикл по элементам
childNodes[]
или используя свойства
firstChild
и
nextSibling
(или свойства
lastChild
и
previousSibling
для обхода в обратном порядке). Методы
appendChild, insertBefore, removeChild
и
replaceChild
позволяют модифицировать дерево документа, изменяя дочерние узлы данного узла.

  • Читать дальше
  • 1
  • ...
  • 610
  • 611
  • 612
  • 613
  • 614
  • 615
  • 616
  • 617
  • 618
  • 619
  • 620
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: