2017-09-18 50 views
0

我試圖添加到我的網站導航平滑滾動,但我有一個艱難的時間搞清楚爲什麼滾動從錯誤的偏移量開始,然後正確移動。滾動從鉻錯誤的偏移量開始,但在Firefox上工作正常

$(window).on("scroll", function() { 
     var scroll_start = window.scrollY; 
     console.log(scroll_start); 
     if (scroll_start > offset) { 
      navToLight(); 
     } else { 
      navToDark(); 
     } 
}); 

我這是怎麼處理的導航錨單擊事件:

$('a.nav-link').on('click', function() { 
    var target = $($(this).attr('href')).position().top; 
    console.log("This is the target: "+target); 
    $("html, body").animate({ 
     scrollTop: target 
    }, 700); 
}); 

這是我在控制檯中看到當我嘗試導航到該網站的「關於部分」。

Figure 1

Website demo

回答

0

該瀏覽器也用於滾動你,你應該做的是停止傳播和對的preventDefault事件:

$('a.nav-link').on('click', function (e) { 
    e.preventDefault(); 
    e.stopPropagation(); 
    var target = $($(this).attr('href')).position().top; 
    console.log("This is the target: "+target); 
    $("html, body").animate({ 
    scrollTop: target 
    }, 700); 
}); 
相關問題