Pregunta

Estoy construyendo una serie de acordeones básicos para un proyecto.

Queremos que tengan páginas estáticas y enlazables. Así que también hemos creado páginas invidividuales para cada uno de los estados abiertos.

Por ejemplo,

/ whoweare es el control deslizante principal.

Pero tenemos un control deslizante secundario ubicado en / whoweare / whatwedo

Lo que estoy buscando haber hecho es que, cuando un usuario hace clic en un encabezado en / whoweare, se abre el control deslizante y la barra de direcciones se actualiza a / whoweare / whatwedo, pero no hay una redirección real. La ubicación de la URL simplemente debería cambiar, nada más.

He intentado usar

window.location.replace($(this).attr('href'));
return false;

Pero eso no parece haber logrado lo que quería, todavía se recarga en una nueva página.

¿Alguna otra sugerencia?

¿Fue útil?

Solución

No puede cambiar la URL sin redirigir: sería una pesadilla de phishing (cambiar la URL a la de un banco mientras permanece en el sitio de phishing, por ejemplo).

Solo puede manipular el hash del documento, es decir, http://domain.com/#identifier - así es como Google, Facebook, etc. proporcionan a los sitios AJAX soporte para el historial del navegador.

Duplicado exacto de # 352343 Cambiando la barra de direcciones del navegador sin actualizar .

actualización: HTML5 ahora permite pushState , pero solo dentro del mismo dominio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top