но регистрирует веб-сайт для использования в качестве обработчика схемы протокола 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
позволяют модифицировать дерево документа, изменяя дочерние узлы данного узла.
Каждый объект в дереве документа реализует как интерфейс
Node
, так и более специализированный интерфейс, например,
Element
или
Text
. Свойство
nodeType
указывает, какой подынтерфейс реализует узел. Это свойство позволяет проверить тип узла перед тем, как использовать свойства и методы более специализированного интерфейса. Например:
var n;
if (n.nodeType == 1) {
// Содержит узел, с которым выполняются операции
// Или использовать константу Node.ELEMENT_N0DE
var tagname = n.tagName; // Если узел является узлом Element, это имя тега
}
Константы
unsigned short ELEMENT_NODE = 1
unsigned short TEXT_N0DE = 3
unsigned short PROCESSING_INSTRUCTION_NODE = 7
unsigned short C0MMENT_N0DE = 8
unsigned short D0CUMENT.N0DE = 9
unsigned short DOCUMENT_TYPE_NODE = 10
unsigned short D0CUMENT_FRAGMENT_N0DE = 11
Эти
константы определяют возможные значения свойства
nodeType
. Обратите внимание, что они являются статическими свойствами функции-конструктора
Node
– они не являются свойствами отдельных объектов
Node
. Отметьте также, что они не определены в ІE версии 8 и ниже. Для совместимости в сценариях можно использовать числовые значения констант или определить собственные константы.
unsigned short D0CUMENT_P0SITI0N_DISC0NNECTED = 0x01
unsigned short D0CUMENT_P0SITI0N_PRECEDING = 0x02
unsigned short D0CUMENT_P0SITI0N_F0LL0WING = 0x04
unsigned short D0CUMENT_P0SITI0N_C0NTAINS = 0x08
unsigned short D0CUMENT_P0SITI0N_C0NTAINED_BY = 0x10
Эти константы определяют биты, которые могут быть установлены или сброшены в значении, возвращаемом методом
compareDocumentPosition
.
Свойства
readonly string baseURI
Определяет базовый URL-адрес для данного объекта
Node
, который будет использоваться при разрешении относительных URL-адресов. Для всех узлов в HTML-документах этот URL-адрес определяется элементом
<base>
или свойством
Document
. URL, из значения которого исключается идентификатор фрагмента.
readonly NodeList childNodes
Это свойство является объектом, подобным массиву, содержащим дочерние узлы текущего узла. Это свойство никогда не должно иметь значение null: для узлов, не имеющих дочерних узлов,
childNodes
– это массив со свойством
length
, равным нулю. Обратите внимание: объект
NodeList
«живой», т. е. любое изменение в списке дочерних узлов элемента немедленно становится видимым через объект
NodeList
.
readonly Node firstChild
Первый дочерний узел этого узла или null, если узел не имеет дочерних узлов.
readonly Node lastChild
Последний дочерний узел этого узла или null, если узел не имеет дочерних узлов.
readonly Node nextSibling
Смежный узел, непосредственно следующий за данным узлом в массиве
chiIdNodes[]
узла
parentNode
, или null, если такого узла нет.
readonly string nodeName
Имя узла. Для узлов
Element
определяет имя тега элемента, которое может быть также получено с помощью свойства
tagName
интерфейса
Element
. Для большинства других типов узлов значение является строковой константой, зависящей от типа узла.
readonly unsigned short nodeType
Тип узла, т. e. информация о том, какой подынтерфейс реализует узел. Допустимые значения определяются перечисленными выше константами. Однако т. к. эти константы не поддерживаются в Internet Explorer, вместо них могут использоваться числовые значения. В HTML-документах распространенные значения для этого свойства таковы: 1 - для узлов Element, 3 - для узлов Text, 8- для узлов Comment и 9 - для единственного узла