HTML5 за 10 минут

Обращение к предыстории браузера


В HTML5 предоставляется возможность манипулировать предысторией браузера, контролируя его предыдущее и текущее состояния. В частности, объект history дает возможность перемещаться вперед и назад по веб-страницам, просматривавшимся в браузере. Это означает, что с помощью данного объекта предыстории можно, например, вернуться на три страницы назад.

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

В этой главе будет показано, каким образом данный механизм работает на практике. А теперь перейдем непосредственно к рассмотрению того, что собой представляет предыстория браузера.

Общее представление о предыстории браузера

В этой главе будет рассмотрен пример HTML-документа pophistory.html.

В данном примере демонстрируются различные свойства объекта history, доступного в HTML5. Так, если пользователь щелкнет на кнопке Назад, произойдет переход на одну просматривавшуюся страницу назад, что аналогично выбору кнопки Назад в самом браузере. А если пользователь щелкнет на кнопке Вперед,

то произойдет переход на одну просматривавшуюся страницу вперед. Если же следующая страница отсутствует, то ничего существенного не произойдет.

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

Помимо этого, в рассматриваемом здесь примере отображается протяженность предыстории браузера, как показано на 6.1. Доступность протяженности предыстории браузера является частью спецификации HTML5.

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

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

на момент написания этой книги отсутствовали какие-либо официальные сведения о подобной поддержке в браузерах, поэтому данный механизм будет рассмотрен только в коде. Но как только его поддержка появится в браузерах, вы уже будете готовы реализовать его на практике.

Ниже приведен краткий обзор программных средств, положенных в основу примера, рассматриваемого в данной главе.

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