2010-01-23 16 views

Respuesta

5

Usted puede usar la biblioteca really simple history

Pero si quiere gestionar usted mismo, puede utilizar la tecla de almohadilla (window.location.hash) estableciendo, por ejemplo, el número de diapositiva allí. Cuando el usuario haga clic atrás o al lado, la tecla hash cambiará, la detectará y realizará el cambio.

Lamentablemente debe verificar el cambio usted mismo, estableciendo un intervalo (es decir: 300 ms) y verificando con el valor anterior. HTML5 tiene un evento onhashchange.

2

Un usuario puede ir a una página anterior sin hacer clic en el botón Atrás en el navegador. Puede hacer clic derecho y desde el menú contextual puede elegir la opción Atrás o Adelante. También puede presionar el teclado para navegar a otra página. Por lo tanto, no será una buena idea presionar el botón Atrás para hacer clic.

1

Uno de nuestros principios de diseño de guía es la siguiente:

nunca, nunca, nunca se rompen en el botón Atrás.

Esto significa no interferir con su funcionamiento, lo que significa dejarlo solo.

Si DEBE saber qué botón ha pulsado el usuario, no tiene suerte, y esto es por diseño. Los tipos que escriben los navegadores no quieren que hagas esto. No quiero que interfiera con la funcionalidad del botón de retroceso. Los usuarios no quieren que lo haga. Entonces, NO.

/rant.

+0

No tengo la intención de romper el botón Atrás, nunca. Solo lo necesito para la transición de página. –

+2

¿Qué hay de FIX el botón Atrás? Por ejemplo, en una página de ajax donde el botón Atrás te lleva a alguna página anterior, pero no a la página inmediatamente anterior (porque se modificó con ajax). – Dan

+0

Bastante justo. Como regla general, no uso AJAX para este tipo de transición. * En mi opinión *, si la interfaz de usuario realmente necesita mostrar una página diferente, deberían ser llevados a una página diferente. AJAX se debe utilizar para presentar una interfaz de usuario interactiva, pero no para redefinir el comportamiento esperado del navegador. –

2

Puede usar el objeto del historial. Tiene la matriz de páginas visitadas. La entrada más reciente es la última página de botón hacia adelante o hacia atrás.

2

@ David

Desde atrás del navegador botones no hacen un seguimiento peticiones Ajax, los desarrolladores tienen más remedio que suppliment esta falta de funcionalidad. Usando jquery tenemos que hacer un seguimiento manual de las solicitudes ajax y volver a solicitar manualmente las páginas parciales para dar a los usuarios lo que QUIEREN y ESPERAN.

Cuestiones relacionadas