window.location = #anchor não funciona no IE
Neste mapa:
http://web.pacific.edu/documents/marketing/campus-map/version%202/stockton-campus-2.0.htm
Eu tenho uma âncora no topo e quero que a página salte para a âncora quando um link é clicado.
Estou usando atualmente
window.location = '#top';
Ele funciona como esperado no FF, no Opera e no Chrome, mas não no IE 7.
Eu tentei todas as permutações como window.location.hash e window.location.assign () e também scrollIntoView (true) e focus ().
Como posso fazê-lo funcionar no IE?
Editar: Nada parece funcionar, o que me faz pensar que não é a sintaxe, mas algo sobre o JS ... aqui é o manipulador de eventos click ... poderia ser porque retorna false? Estou me agarrando a palhas.
// Click handler for each location link
$('#index a').click(function()
{
hideMarkers();
location.href = location.href + "#top";
var marker = showMarker( $(this).attr('data-id') );
GEvent.trigger( marker, "click" );
return false;
});
Editar: Atribuição a quebras de window.location.hash no IE7 e IE8 em páginas que foram carregadas como resultado do redirecionamento de página por meio do cabeçalho HTTP "Location". A solução é retornar uma página com Javascript que, por si só, realizará o redirecionamento. Veja a resposta de Joe Lapp.