У нас есть несколько страниц, использующих ajax для загрузки контента, и там несколько раз, когда нам нужно глубоко подключиться к странице. Вместо того, чтобы иметь ссылку на "Пользователи" и говорить людям, чтобы щелкнуть "Настройки", полезно иметь возможность связать людей с настройками user.aspx #
Чтобы люди могли предоставить нам правильные ссылки на разделы (для технической поддержки и т.д.), я настроил автоматическое изменение хэша в URL-адресе всякий раз, когда нажимается кнопка. Единственная проблема, конечно, в том, что когда это происходит, она также прокручивает страницу к этому элементу.
Есть ли способ отключить это? Ниже приведен пример того, как я это делаю до сих пор.
$(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;
});
});
Я надеялся, что return false;
остановит прокрутку страницы - но это просто заставляет ссылку работать не на всех. Так что теперь просто прокомментировал, чтобы я мог перемещаться.
Любые идеи?