ScrollTop to element - 20px

时间:2013-11-11 18:11:15

标签: javascript jquery scrolltop

我正在尝试将scrollTop设为我的div元素,但不是确切的位置。我想要 在我的div元素之前去20px。我想我可以更好地解释为你展示我的代码:

HTML:

<div id="arrow-down">Click here and go to content!</div>

<div id="content">The content is here!</div>

JQuery的: 我已经有一个工作正常的代码,但我想让它变得不同。

$(document).ready(function() {
    $('#arrow-down').click(function() {
        $('html, body').animate({
               scrollTop: $("#content").offset().top
        }, 800);
    });
});

此代码将我带到div#内容,但我想从此顶部开始20px!

类似的东西:

$(document).ready(function() {
    $('#arrow-down').click(function() {
        $('html, body').animate({
               scrollTop: $("#content" - 20px).offset().top
        }, 800);
    });
});

好吧,我不知道它的外观是否混乱......我希望你们能帮助我!

2 个答案:

答案 0 :(得分:5)

你可以这样做:

$('html, body').animate({
     scrollTop: $("#content").offset().top - 20
}, 800);

答案 1 :(得分:2)

$(document).ready(function() { 
    $('#arrow-down').click(function() {
         $('body').animate({
         scrollTop: $("#content").offset().top-20
    }, 800);
  }); 
});

试试这个