сss (9) сss3 (14) ajax (2) css (42) drupal (7) Fix IE6 (4) font (4) html (23) javascript (22) jQuery (15) js (5) less (1) php (1) scss (1) soft (2) vue (1) webstorm (1) wordpress (1)

Scroll для сайта landing page

Сайт типа landing page:

При прокрутке сайта > подсветка меню, при клике на пункт меню > прокрутка до нужного пункта... вижу это как-то так:


HTML:

header
  nav.main-nav
    a.active
    a
    a
    a
    a
    a 
main
  section.class1
  section.class2
  section.class3
  section.class4
  section.class5
  section.class6
footer

JS:



$(function() {
  $('.main-nav a').click(function() {
    $('.main-nav a').removeClass('active');    var target = $(this.hash);    target = target.length ? target : $('[name=' + this.hash.slice(1) +']');    if (target.length) {
        $('html,body').animate({
            scrollTop: target.offset().top-$('header').height()
        }, 1000);        $(this).addClass('active');        return false;    }
  });
};

$( window ).scroll(function() {
    var winScroll = $(window).scrollTop();
        for(var i = 0; i < $('section').length; i++){
            var coorSection = $('section').eq(i).offset().top - $('header').innerHeight();            if( winScroll > coorSection){
                $('.main-nav a').removeClass('active');                $('.main-nav a').eq(i).addClass('active');            }
        }
});




П.С. header прижат к верху сайта (position:fixed)