Показать сообщение отдельно
  #14 (permalink)  
Старый 16.10.2015, 22:30
Интересующийся
Отправить личное сообщение для deniskutovskiy Посмотреть профиль Найти все сообщения от deniskutovskiy
 
Регистрация: 02.10.2015
Сообщений: 18

Сообщение от deniskutovskiy Посмотреть сообщение
Плавный переход к объектам в рамках одной страницы происходит верно.
НО: Переход с другой страницы происходит странно. Вместо скролла к нужному элементу (соответствующему id после # в url) происходит непонятный недоскролл (скажем на 1000 пикселей), и так с каждым элементом, к которому пытаюсь перейти (с другой страницы по адресу с хешем). То же происходит и при обновлении этой же самой страницы (с хешем в url). Наличие «offset: -100» на результат не влияет.
Жесть какая-то. В общем добавил код с другого сайта (последний пост ссылается на страницу с кодом). Каким-то образом прокатило. Пока работает. Если перестанет, отпишусь (даже проверил еще раз на всякий случай перед нажатием «Ответить»). В результате получил код:

//===== ДЛЯ ВНЕШНЕЙ ССЫЛКИ //
(function($){
  $(document).on("ready", function () {
      var urlHash = window.location.href.split("#")[1];
      $('html,body').animate({
          scrollTop: $('.' + urlHash + ', #' + urlHash +',[name='+urlHash+']').first().offset().top -100
      }, 1000);
  });
 
})(jQuery);

//===== ДЛЯ ЛОКАЛЬНОЙ ССЫЛКИ //
$(document).ready(function(){
				
				$($.localScroll({
					hash: true,
					offset: -100
				}));
				
			});
Ответить с цитированием