2012-02-05 20 views
5

Por ejemplo, si un usuario está en http://example.com, el usuario pasa al http://example.com#comments. Si el usuario hace clic en "volver" en su navegador, ¿cómo puedo hacer que "ignore" http://example.com y vaya directamente a la URL que visitó antes de eso?Haciendo que los navegadores ignoren el hash URL cuando se hace clic en el botón Atrás

He cargado jQuery.

+2

que tendría que bloquear el clic que le consiguió a '# comments' en primer lugar, quizás usando un 'preventDefault()' y use jQuery para desplazarse hacia allí. De lo contrario, todo se convierte en parte de la historia normal. – Sparky

Respuesta

9

En lugar de tener un enlace como:

<a href='#comments'>Link</a> 

Uso location.replace() a "sobrescribir" el registro de http://example.com en la historia del navegador.

https://developer.mozilla.org/en/DOM/window.location

Ejemplo:

HTML:

<a id='commentsLink'>Link</a> 

JavaScript:

$("#commentsLink").click(function(){ 
    window.location.replace("#comments"); 
}); 
+4

No use w3schools ... http://w3fools.com (Enlace alternativo para obtener información sobre 'window.location': https://developer.mozilla.org/en/DOM/window.location) –

+0

@ Platinum Azure - Eso estaba en el fondo de mi mente cuando publiqué el enlace, pero la pereza me dio lo mejor de mí. Gracias por ponerme en línea :) –

+1

Gracias por arreglarlo. +1 para su problema :-) –

Cuestiones relacionadas