<!DOCTYPE HTML>
<title>Página 5</title>
<p>Estas en la página<span id="coord">5</span>.</p>
<p>
<a href="?x=6" onclick="go(1); return false;">Ir a página 6</a> o
<a href="?x=4" onclick="go(-1); return false;">Volver a página 4</a>?
</p>
<script>
var currentPage = 5; // Arrancamos desde la pagina 5
function go(d) {
setupPage(currentPage + d);
history.pushState(currentPage, document.title, '?x=' + currentPage);
}
window.onpopstate = function(event) {
setupPage(event.state);
}
function setupPage(page) {
currentPage = page;
document.title = 'Página ' + currentPage;
document.getElementById('coord').textContent = currentPage;
document.links[0].href = '?x=' + (currentPage+1);
document.links[0].textContent = 'Ir a página ' + (currentPage+1);
document.links[1].href = '?x=' + (currentPage-1);
document.links[1].textContent = 'Volver a página ' + (currentPage-1);
}
</script>
Ya que el pushState solo cambia el url del browser y crea una entrada en el historial, mi pregunta es, por que? cuando abro otra pestaña y pongo http://localhost/pushstate/algo.html?x=7 esta url se queda como diceccion y sale la pagina por defecto como si hubiera puesto http://localhost/pushstate/algo.html ¿no tiene que dicir? Not Found ya que no se crea un link real?
Ojala me haya dejado entender. uso Chrome
Muchas gracias.