Historial

Internet Explorer 10 admite la interfaz Historial del borrador de la especificación HTML5, que incluye métodos que permiten administrar la pila de historial y la dirección URL de un sitio. Este control ofrece a los usuarios finales la experiencia que esperan de los botones Atrás y Adelante y el rendimiento de actualizaciones pequeñas de páginas sin navegación ni cargas de página. El historial HTML5 se describe en la sección 5.4.2 de la especificación HTML5 del World Wide Web Consortium (W3C).

Los métodos history.pushState() y history.replaceState()

Usando el método history.pushState(), puedes crear una nueva entrada en el historial y, opcionalmente, incluir un objeto de estado. Con el método history.replaceState(), puedes modificar el elemento actual del historial. A continuación, verás la sintaxis de estos dos métodos.


history.pushState(data, title, url); 
history.replaceState(data, title, url); 


ParámetroDescripción

data

Un objeto de estado que quieres que esté asociado con la nueva entrada del historial. Se devuelve como la propiedad state del evento onpopstate.

title

Actualmente, Internet Explorer 10 omite esto.

url

(Opcional) Una dirección URL relativa o absoluta en el mismo dominio u origen de la dirección URL actual.

 

Con estos nuevos métodos de HTML5, puedes modificar la ruta dentro del sitio web, pero debido a la seguridad, no puedes modificar el domino ni el origen de la dirección URL actual. También puedes modificar el fragmento de la dirección URL que sigue al signo de número (también conocido como hash), o el segmento de consulta que sigue al signo de interrogación (?) de la dirección URL. Por ejemplo, usando la dirección URL "http://go.microsoft.com/fwlink/p/?LinkId=214816", puedes modificar casi cualquier cosa situada a la derecha de ".com". Puedes cambiarlo por "http://go.microsoft.com/fwlink/p/?LinkID=58649" pero no puedes cambiar el dominio (go.microsoft.com), el puerto ni el esquema (http://). La tabla siguiente muestra algunas otras actualizaciones de esta dirección URL y si se permiten o no:

Cambio de URLEstado
go.microsoft.com/foopermitido
http://go.microsoft.com/foopermitido
/foopermitido
Foo?querypermitido
/foo#somedatapermitido
www.microsoft.comerror
http://go.microsoft.com:9090/fooerror

 

El evento window.onpopstate

El controlador del evento window.onpopstate notifica a la aplicación cuando el usuario navega entre dos entradas de visitas en el historial, donde al menos una fue creada con history.pushState() o history.replaceState(). Esto ocurre mediante interacción con la interfaz de usuario, por ejemplo, hacer clic en el botón atrás o adelante, hacer clic en Atrás desde un menú contextual o presionar la tecla de retroceso. También puede ocurrir al presionar alt+izquierda, alt+derecha o la tecla de retroceso, o llamando a history.back, history.forward o history.go.

El parámetro del evento popstate contiene el objeto de estado (establecido por el parámetro de datos) del método pushState o replaceState. La propiedad history.state también contiene el objeto de estado. Cuando una página se carga inicialmente, el estado será NULL. Cuando se llama a pushState, la pila de avance se borra pero al llamar a replaceState no se borra la pila de avance.

Referencia de API

PopStateEvent
pushState

Demostraciones de la versión de prueba de Internet Explorer

HTML5 History Example: Undo

Publicaciones de IEBlog

Historial de HTML5 en IE10

Especificación

HTML5: sección 5.5.2

 

 

Mostrar:
© 2015 Microsoft