Mamy kilka stron korzystających z technologii AJAX do wczytywania zawartości i jest kilka sytuacji, w których potrzebujemy głębokiego linku do strony. Zamiast mieć link do „Użytkownicy” i mówić ludziom, aby kliknęli „ustawienia”, warto mieć możliwość powiązania ludzi z user.aspx # settings
Aby umożliwić ludziom dostarczanie nam poprawnych linków do sekcji (w celu uzyskania pomocy technicznej itp.), Skonfigurowałem automatyczne modyfikowanie skrótu w adresie URL po każdym kliknięciu przycisku. Jedynym problemem jest oczywiście to, że kiedy tak się dzieje, przewija się również stronę do tego elementu.
Czy jest sposób, aby to wyłączyć? Poniżej znajduje się, jak dotychczas to robię.
$(function(){
//This emulates a click on the correct button on page load
if(document.location.hash){
$("#buttons li a").removeClass('selected');
s=$(document.location.hash).addClass('selected').attr("href").replace("javascript:","");
eval(s);
}
//Click a button to change the hash
$("#buttons li a").click(function(){
$("#buttons li a").removeClass('selected');
$(this).addClass('selected');
document.location.hash=$(this).attr("id")
//return false;
});
});
Miałem nadzieję, return false;
że zatrzyma przewijanie strony - ale to po prostu sprawia, że link w ogóle nie działa. Więc to na razie tylko zakomentowane, abym mógł nawigować.
Jakieś pomysły?