Spec-Zone.ru › Web APIs

Навигация: метод traverseTo()

Ограниченная доступность

Эта функция не является базовой, поскольку она не работает в некоторых из самых широко используемых браузеров.

  • Узнать больше
  • См. полную совместимость
  • Отправить отзыв

Экспериментально: Это экспериментальная технология экспериментальная технология
Перед использованием в рабочей среде внимательно проверьте таблицу совместимости браузеров.

Метод traverseTo() интерфейса Navigation переходит к NavigationHistoryEntry, идентифицированному заданным key.

Синтаксис

traverseTo(key)
traverseTo(key, options)

Параметры

key

Ключ NavigationHistoryEntry, к которому осуществляется переход.

options Необязательно

Объект с параметрами, содержащий следующие свойства:

info Необязательно

Информация, определённая разработчиком, которая передаётся в событие navigate, доступная в NavigateEvent.info. Это может быть любой тип данных. Например, можно отобразить недавно перенаправленный контент с разными анимациями в зависимости от способа перехода (свайп влево, свайп вправо или переход на главную страницу). Строка, указывающая, какую анимацию использовать, может быть передана как info.

Возвращаемое значение

Объект со следующими свойствами:

committed

Promise, который выполнится, когда видимый URL изменится, и будет создан новый NavigationHistoryEntry.

finished

Promise, который выполнится, когда все обещания, возвращаемые обработчиком intercept(), будут выполнены. Это эквивалентно выполнению обещания NavigationTransition.finished, когда срабатывает событие navigatesuccess.

Любое из этих обещаний отклоняется, если навигация по какой-либо причине не удалась.

Исключения

InvalidStateError DOMException

Выбрасывается, если значение Navigation.currentEntry NavigationHistoryEntry.index равно -1, что означает, что текущий Document ещё не активирован, или если список истории навигации не содержит NavigationHistoryEntry с заданным ключом, или если текущий Document загружается.

Примеры

Настройка кнопки "Домой"

function initHomeBtn() {
  // Get the key of the first loaded entry
  // so the user can always go back to this view.
  const { key } = navigation.currentEntry;
  backToHomeButton.onclick = () => {
    navigation.traverseTo(key);
  };
}
// Intercept navigate events, such as link clicks, and
// replace them with single-page navigations
navigation.addEventListener("navigate", (event) => {
  event.intercept({
    async handler() {
      // Navigate to a different view,
      // but the "home" button will always work.
    },
  });
});

Спецификации

Спецификация
HTML
# dom-navigation-traverseto-dev

Совместимость браузеров

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
traverseTo 102 102 Нет 88 Нет 102 Нет 70 Нет 19.0 102

См. также

  • Современный маршрутизация на стороне клиента: API навигации
  • Описание API навигации
  • Живой демонстрация API навигации Domenic Denicola's живой демонстрации API навигации

© 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/traverseTo

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API