Tengo un SPA muy rudimentario construido en vainilla JS. Hay dos botones que el usuario puede usar para navegar entre páginas, por ejemplo:
buttonProfile.addEventListener("click", function () { window.history.pushState({}, "", "profile/"); var updatePage = new Event("update-page"); dispatchEvent(updatePage); }); En algún lugar de la aplicación, tengo un detector de eventos que escucha update-page de actualización para actualizar el contenido que debe actualizarse (sin volver a cargar la página) en función de la URL actual. Todo funciona bien.
Sin embargo, noté dos comportamientos extraños:
EDITAR
En caso de que ayude, noté que tengo el mismo problema cuando uso los SPA de otras personas que tienen una implementación similar. Vea esta demostración simple, por ejemplo: DEMO | CÓDIGO
Pasos para reproducir:
EDITAR 2
Me doy cuenta de que tanto mi sitio como el sitio que publiqué anteriormente funcionan bien cuando ejecuto mi navegador en modo de incógnito. Debe haber algún otro problema con mi Chrome (aunque no tengo idea de qué).
Está bien, lo encontré. Era la extensión oficial de Chrome de Matter . Sin embargo, no estoy seguro de qué causó exactamente el problema.