Плавная прокрутка якорей

108
30 сентября 2019, 01:00

Всем привет, Я использую этот простенький код для плавного скролла по якорям и всё это чудесно работает:

function scrollNav() {
  $('a[href*="#"]').click(function(){
    $('html, body').stop().animate({
        scrollTop: $( $(this).attr('href') ).offset().top - 73
    }, 400);
    return false;
  });
}
scrollNav();

НО, на разрешениях 1023 - 1367 был применен медиа запрос для более читабельного вида сайта :

@media (min-width: 1023px) and (max-width: 1367px) {
    body {
      zoom: 0.8;
    }
}

И вот как раз скролл по якорям на этих резолюциях работает некорректно.

Может кто подскажет как решить эту задачу?

Спасибо за любую помощь

Answer 1

умножать прокрутку тоже на 0.8 при этих разрешениях

function scrollNav() { 
  $('a[href*="#"]').click(function(){ 
   
    let scrollTop = $( $(this).attr('href') ).offset().top; 
    if($(window).width() > 1023 && $(window).width() < 1376){ 
      scrollTop = scrollTop*0.8; 
    } 
     
    $('html, body').stop().animate({ 
        scrollTop: scrollTop - 73 
    }, 400); 
    return false; 
  }); 
} 
scrollNav();

READ ALSO
Неправильное сложение цифр всех input

Неправильное сложение цифр всех input

Здраствуйте! У меня такое заданиеНа странице есть несколько form, в form несколько input, в input числа

113
jQuery. Дубликаты значений

jQuery. Дубликаты значений

Трудность в следующем: берется шаблон (тег template) из html файлаПри нажатии по кнопке создается разметка из шаблона в html файле, на котором навешивается...

92