Как реализовать прокрутку до элемента с помощью scrollTop при body {zoom:90%} ?

Рейтинг: 0Ответов: 1Опубликовано: 19.11.2014

Здравствуйте.

Сайт http://marvelestate.ru.
На сайте реализована прокрутка до блока с ID по клику на пункт меню.

$('.main_menu a').click(function () {
     var elementClick = $(this).attr('href');
     var destination = $(elementClick).offset().top;
     $('body').animate({ scrollTop: destination  }, 1000);
     return false;
});

Все работает, все ок. Но по прошествии некоторого времени заказчику захотелось изменить масштаб, задав

body {
  zoom: 90%;
}

Теперь, соответственно, скролл работает некорректно. Как привязать скролл к масштабированию?

Благодарю.

Ответы

▲ 2Принят

Используйте нативный js метод получения отступа, пример http://jsfiddle.net/dvxeyyxp/1/

--js

$('a').click(function () {
     var destination = document.getElementById($(this).attr('href')).offsetTop;
     $('body').animate({ scrollTop: destination  }, 1000);
     return false;
 });