Cualquier idea de cómo puedo escribir esto:
var hashValue = "#" + window.location.hash.substr(1); $([document.documentElement, document.body]).animate({ scrollTop: $(hashValue).offset().top }, 500);Sin obtener este error:
Error no detectado: error de sintaxis, expresión no reconocida: #
Está funcionando así, pero no quiero ver este error en la consola.
var hashValue = "#" + window.location.hash.substring(1); $([ document.documentElement, document.body ]).animate({ scrollTop: hashValue === '#' ? 0 : $(hashValue).offset().top }, 500); Supongamos que window.location.hash es la cadena vacía. En este caso, hashValue es "#" .
Entonces, la llamada jQuery $(hashValue) no lo reconoce como un ID de elemento, por lo que genera un error de sintaxis.