Навигация: метод back()
Ограниченная доступность
Эта функция не относится к Baseline, поскольку она не работает во всех широко используемых браузерах.
Экспериментально: Это экспериментальная технология
Перед использованием в рабочей среде внимательно ознакомьтесь с таблицей совместимости браузеров.
Метод back() интерфейса Navigation перемещает навигацию назад на одну позицию в истории навигации.
Синтаксис
back(options)
Параметры
optionsНеобязательно-
Объект опций, содержащий следующие свойства:
infoНеобязательно-
Данные, определённые разработчиком, которые будут переданы событию
navigateи станут доступны вNavigateEvent.info. Это могут быть данные любого типа. Например, вы можете отобразить недавно просмотренный контент с различной анимацией в зависимости от способа перехода (свайп влево, свайп вправо или возврат домой). Строка, указывающая используемую анимацию, может быть передана в видеinfo.
Возвращаемое значение
Объект со следующими свойствами:
committed-
Обещание
Promise, которое выполнится, когда видимый URL изменится, и будет создана новая записьNavigationHistoryEntry. finished-
Обещание
Promise, которое выполнится, когда все обещания, возвращаемые обработчикомintercept(), будут выполнены. Это эквивалентно выполнению обещанияNavigationTransition.finished, когда срабатывает событиеnavigatesuccess.
Любое из этих обещаний отклоняется, если навигация по какой-либо причине завершилась неудачно.
Исключения
-
InvalidStateErrorDOMException -
Выбрасывается, если значение
Navigation.currentEntry'sNavigationHistoryEntry.indexравно -1 или 0, т. е. текущийDocumentещё не активен, или текущая запись истории является первой в списке, что означает невозможность навигации назад, или если текущийDocumentзакрывается.
Примеры
async function backHandler() {
if (navigation.canGoBack) {
await navigation.back().finished;
// Handle any required clean-up after
// navigation has finished
} else {
displayBanner("You are on the first page");
}
}
async function forwardHandler() {
if (navigation.canGoForward) {
await navigation.forward().finished;
// Handle any required clean-up after
// navigation has finished
} else {
displayBanner("You are on the last page");
}
}
Спецификации
| Спецификация |
|---|
| HTML # dom-navigation-back-dev |
Совместимость браузеров
| Рабочие столы | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
back |
102 | 102 | Нет | 88 | Нет | 102 | Нет | 70 | Нет | 19.0 | 102 |
См. также
- Современное маршрутизирование на стороне клиента: API навигации
- Пояснения к API навигации
- Демонстрация API навигации Domenic Denicola
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Navigation/back