如何抵消我的自动滚动?

时间:2017-03-07 21:04:47

标签: jquery scroll autoscroll

每当从一个div转换到另一个div时,我需要将自动滚动功能偏移大约50-100px。

下面的脚本是我正在使用的。当我点击一个链接时,它会平滑地滚动到相关Div的顶部。

但是我的网站顶部有一个标题,所以这总是涵盖了您转换到的div。

无论如何我可以将过渡设置为div的顶部,然后将其偏移-100px?

我的代码如下。

   $(document).ready(function(){
    $('a[href^="#"]').on('click',function (e) {
      e.preventDefault();

    var target = this.hash;
    var $target = $(target);

    $('html, body').stop().animate({
        'scrollTop': $target.offset().top
    }, 900, 'swing', function () {
        window.location.hash = target;
    });
});
 });

1 个答案:

答案 0 :(得分:0)

好的,从您的评论中可以看出,您可以尝试:

$('html, body').stop().animate({
        'scrollTop': ($target.offset().top - 100) // 100 is hard coded though you can make it dynamic if you know identifier of your sticky div like so: ($target.offset().top - $("#sticky-div").outerHeight())
    }, 900, 'swing', function () {
        window.location.hash = target;
});