У меня есть меню со scrollspy (используя twitter boostrap). Я хочу обновить window.location.hash
, когда пользователь прокручивает до следующего раздела.
Следующий код работает, когда пользователь прокручивает страницу вниз:
$(window).on('activate.bs.scrollspy', function (e) {
location.hash = $("a[href^='#']", e.target).attr("href") || location.hash;
});
Однако это не очень хорошо работает, когда пользователь прокручивает вверх.
Причина этого в том, что установка нового location.hash
запускает браузер для перехода к соответствующему якорю. Это запускает цепную реакцию, в которой пользователь мгновенно оказывается в верхней части страницы.
Теперь, что было бы самым простым способом решить эту проблему?