Чтение онлайн

ЖАНРЫ

JavaScript. Подробное руководство, 6-е издание
Шрифт:

void go([long delta])

Метод

History.go
принимает целочисленный аргумент и вынуждает броузер открыть URL-адрес, отстоящий от текущего в журнале истории посещений на указанное число позиций. Положительное значение соответствует переходу вперед по истории посещений, а отрицательное - переходу назад. То есть вызов
history.go(-1)
эквивалентен вызову
history.back
и имеет тот же эффект, что и щелчок на кнопке Back. При вызове с аргументом 0 или вообще без аргумента этот метод перезагрузит текущий документ.

void pushState(any data, string title, [string url])

Добавляет новую запись в журнал посещений

для данного окна, сохраняя структурированную копию (см. врезку «Структурированные копии» в главе 22) данных
data
, а также значения
title
и
url
. Если позднее пользователь воспользуется механизмом истории посещений броузера, чтобы вернуться к этому сохраненному состоянию, в окне будет сгенерировано событие «popstate» и обработчику будет передан объект
PopStateEvent
с еще одной структурированной копией значения аргумента
data
в его свойстве
state
.

Аргумент

title
определяет имя сохраненного состояния, и броузеры могут отображать его в графическом интерфейсе управления историей посещений. (На момент написания этих строк броузеры игнорировали данный аргумент). Если указан аргумент url, он будет отображаться в строке ввода адреса и обеспечит сохранение информации о состоянии, благодаря чему его можно будет использовать для создания закладки или передачи другим пользователям. Аргумент url интерпретируется относительно текущего значения
document location
. Если в аргументе url указан абсолютный URL-адрес, он должен иметь то же происхождение, что и текущий документ. Чаще всего URL-адреса используются на практике для изменения идентификатора фрагмента документа, начинающегося с символа #.

void replaceState(any data, string title, [string url])

Этот метод похож на метод

pushState,
за исключением того, что вместо создания новой записи в истории посещений окна он изменяет текущую запись, сохраняя в ней новые значения
data, title
и
url
.

HTMLCollection

коллекция HTML-элементов, доступных по позиции или по имени

Объект

HTMLCollection
– это подобный массиву объект, доступный только для чтения, содержащий объекты
Element
и определяющий свойства, соответствующие значениям атрибутов
name
и
id
хранящихся в нем элементов. Объект
Document
определяет свойства типа
HTMLCollection
, такие как
forms
и
image
.

Объекты

HTMLCollection
определяют методы
item
и
namedltem
для извлечения элементов по номеру позиции или имени, но они практически не используются на практике: объект
HTMLCollection
можно рассматривать как обычный объект и обращаться к его свойствам и элементам массива. Например:

document.images[0] // По индексу элемента в коллекции HTMLCollection

document.forms.address // По имени элемента в коллекции HTMLCollection

Свойства

readonly unsigned long length

Количество элементов в коллекции.

Методы

Element item(unsigned long index)

Возвращает элемент коллекции, расположенный в позиции

index
, или null, если индекс
index
выходит за границы массива.
Этот метод можно не вызывать явно, а указать индекс в квадратных скобках (как для массива).

object namedltem(string name)

Возвращает первый элемент из коллекции, имеющий значение name в атрибуте

id
или
name
либо null, если такой элемент отсутствует. Этот метод можно не вызывать явно, а указать имя в квадратных скобках.

HTMLDocument

см. Document

HTMLEIement

см. Element

HTMLFormControlsCollection

объект, подобный массиву, содержащий элементы форм HTMLCollection

Объект

HTMLFormControlsCollection
является специализированным подтипом
HTMLCollection
, используемым элементами
Form
для представления коллекций элементов форм. Подобно объекту
HTMLCollection
, его можно использовать как массив, используя числовые индексы, или как объект, индексируя его значениями атрибутов
name
или
id
элементов форм. HTML-формы часто включают несколько элементов (обычно радиокнопок или флажков), имеющих одинаковые значения в атрибуте
name
, и объект
HTMLFormControlsCollection
обрабатывает их иначе, чем обычный объект
HTMLCollection
. При обращении к свойству объекта
HTMLFormControlsCollection
, которому соответствуют несколько элементов с одинаковыми именами, объект
HTMLFormControlsCollection
возвращает объект, подобный массиву, содержащий все элементы формы, использующие это имя. Кроме того, возвращаемый объект, подобный массиву, имеет свойство
value
, которое содержит значение атрибута
value
первой отмеченной радиокнопки с этим именем. Этому свойству можно даже присвоить значение, чтобы отметить соответствующую ему радиокнопку.

HTMLOptionsCollection

коллекция элементов Option HTMLCollection

Объект

HTMLOptionsCollection
является специализированным подтипом
HTMLCollection
, который представляет элементы
Option
, имеющиеся в элементе
Select
. Он переопределяет метод
namedItem,
чтобы обеспечить возможность работы с несколькими элементами
Option
, имеющими одинаковые имена, и определяет методы добавления и удаления элементов. По историческим причинам объект
HTMLOptionsCollection
определяет доступное для записи свойство
length
, которое можно использовать для усечения или расширения коллекции.

Свойства

unsigned long length

Возвращает количество элементов в коллекции. Однако, в отличие от свойства

length
обычного объекта
HTMLCollection
, это свойство доступно не только для чтения. Если присвоить ему значение меньше текущего, коллекция элементов
Option
будет усечена, а элементы
Option
, оказавшиеся за пределами коллекции, будут удалены из элемента
Select
. Если присвоить свойству
length
значение больше текущего, будут созданы и добавлены в элемент
Select
и в коллекцию новые пустые элементы
<option/>
.

Поделиться с друзьями: