Tengo una página con dos pestañas que deseo poder cambiar con Javascript, pero también establezco el ancla (por ejemplo, page.html#tab1
) en la URL para marcar/enlazar.¿Activar el anclaje de URL pero no desplazarse hacia él?
De forma predeterminada, los contenidos de las pestañas están en dos divisiones, una debajo de la otra, y la etiqueta de anclaje se desplazará a la correcta, con JS deshabilitado.
Con JS habilitado, las clases CSS se aplican para que actúen como pestañas. Cada pestaña se vincula a cada delimitador, pero cuando hace clic para cambiar de pestaña, la página se desplaza a la pestaña. Si devuelvo falso de la función onclick, la URL no cambia para incluir el anclaje.
¿Cómo hago para que la URL del navegador cambie a page.html#tab1
pero no se desplace al #tab1
?
Esto funciona, y acabo de descubrir que es lo que hace validator.w3.org. Al final, decidí descartar hacer que el ancla salte al lugar correcto en navegadores que no sean JS, ya que los dos divisores no son muy altos, y como dices, los enlaces de usuarios habilitados para JS para usuarios que no son JS lo detienen. – DisgruntledGoat