Qué es Generador de snippets Navigation API Router?
La API Navigation es una API moderna del navegador que intercepta navegaciones a través de un handler navigation.addEventListener('navigate', ...). A diferencia de la History API, que solo dispara un evento popstate en la navegación hacia atrás/adelante, la Navigation API captura todos los tipos de navegación, incluyendo clics en enlaces, envíos de formularios, navegación programática y navegación hacia atrás/adelante. Se integra con la View Transition API para cambios de página animados y proporciona restauración de desplazamiento y gestión del ciclo de vida de navegación incorporados.
Respuesta rápida
Genere fragmentos de JavaScript para enrutamiento del lado del cliente usando la Navigation API. Configure patrones de ruta con URLPattern, opciones de intercepción para clics en enlaces y navegación del navegador, integración con view transition para cambios de página animados y comportamiento de restauración de desplazamiento. La Navigation API (Chrome 102+, Safari 16.4+, Firefox 131+) reemplaza la History API con un evento navigate unificado, AbortSignal para cancelación y soporte incorporado de view transition.
Last updated: 2026-05-31
Limitaciones
- La Navigation API aún no es compatible con todos los navegadores. Chrome 102+, Edge 102+, Safari 16.4+ y Firefox 131+ la soportan. Los navegadores antiguos requieren un respaldo a la History API o navegación del lado del servidor.
- La integración de view transition requiere tanto la Navigation API como la View Transition API. Las view transitions entre documentos son una característica más reciente dentro de la View Transition API y tienen requisitos de navegador adicionales más allá de la línea base de la Navigation API.
- La Navigation API no maneja preocupaciones a nivel de aplicación como carga diferida, división de código o almacenamiento en caché de datos. Estos deben implementarse por separado en los handlers de ruta.
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Cómo usar esta herramienta
- Defina patrones de ruta usando objetos URLPattern o comparadores de ruta simples. Cada ruta puede tener una función handler que obtiene contenido y actualiza el DOM.
- Configure las opciones de intercepción de navegación: interceptar todas las navegaciones, solo navegaciones del mismo origen o tipos específicos (push, replace, reload, traverse).
- Active la integración con view transition para animar entre estados de página usando document.startViewTransition dentro del handler navigate.
- Seleccione el comportamiento de restauración de desplazamiento: restaurar automáticamente a la posición anterior, desplazarse al inicio en cada navegación o destinos de desplazamiento personalizados por ruta.
Para qué puedes usarla
- Construir un enrutador de aplicación de una sola página con soporte adecuado de navegación hacia atrás/adelante y sin condiciones de competencia entre solicitudes de navegación concurrentes.
- Crear una aplicación de múltiples páginas con navegación del lado del cliente mejorada progresivamente que degradece a cargas completas de página en navegadores no compatibles.
- Implementar transiciones de página animadas entre vistas usando la View Transition API dentro del handler navigate de la Navigation API.