HTML5 за 10 минут

Представление о прикладном программном интерфейсе предыстории браузера


Объект history является составной частью объекта window (т.е. его потомком) в браузере, и поэтому к нему можно обращаться по ссылке window.history. Ниже приведены атрибуты и функции, применяемые для реализации объекта window.history в коде HTML5.

•    window.history.length

•    window.history.back()

•    window.history.forward()

•    window.history.go()

•    window.history.pushState()

•    window.history.replaceState()

•    window.onpopstate

Рассмотрим их по порядку и более подробно.

Атрибут window, history .length

Атрибут window.history.length предоставляет целый ряд элементов предыстории из сеанса просмотра веб-страниц в браузере. Более подробно этот атрибут будет рассмотрен далее по ходу создания примера HTML-документа pophistory.html.

Функция window.history.back()

Эта функция осуществляет продвижение на один шаг назад в предыстории браузера. Таким образом, она возвращает браузер

на предыдущую веб-страницу. Если же предыдущая страница отсутствует, эта функция не производит никаких действий.

Функция window.history.forward()

Данная функция осуществляет продвижение на один шаг вперед в предыстории браузера. Так, если пользователь, просматривающий страницу А, перейдет на страницу Б, а затем вернется к странице А, то для последующего перехода к странице Б, т.е. на одну просматривавшуюся страницу вперед, следует выполнить данную функцию. Если же следующая страница отсутствует, эта функция не производит никаких действий.

Функция window.history.go([delta])

Эта универсальная функция позволяет перемещаться вперед и назад на число страниц, указанное в ее аргументе delta. Так, если передать этой функции числовое значение -2 в качестве ее аргумента delta, браузер осуществит возврат на две просматривавшиеся страницы назад. А если передать данной функции числовое значение 5, то браузер осуществит переход на пять просматривавшихся страниц вперед.

В определении данной функции аргумент delta указывается в квадратных скобках потому, что он является необязательным. Поэтому если не предоставить ей аргумент delta, браузер просто перезагрузит текущую страницу. Как и следовало ожидать, данная функция не производит никаких действий, если аргумент delta оказывается за пределами предыстории браузера.

Функция window.history.pushState(data, title [, url ])

Данная функция позволяет поместить данные в предысторию. Аргумент data обозначает объект, содержащий введенные данные, аргумент title — имя, по которому следует обращаться к данным, тогда как аргумент url позволяет связать данные с конкретной страницей, чтобы извлечь их из предыстории при перезагрузке этой страницы.

Функция window.history.replaceState(data, title [, url ])

Эта функция осуществляет замену данных, имени и URL (т.е. веб-адреса) в текущем элементе предыстории браузера значениями, задаваемыми в аргументах data, title и url.

Комментарии закрыты