Jquery滚动到div,自定义位置?

时间:2013-01-16 20:00:05

标签: jquery scroll

所以我使用这个脚本滚动到JQuery中的div:

jQuery(document).ready(function($) {

$(".scroll").click(function(event){     
    event.preventDefault();
    $('html,body').animate({scrollTop:$(this.hash).offset().top}, 800);
});
});

问题是当它滚动到div时,标题(比如前20px)被隐藏了,因为我的页面上实现了一个标题顶部栏div。我如何控制滚动,以便提前停止,以便您可以查看整个div。

3 个答案:

答案 0 :(得分:0)

您可以添加标题的大小,使其在该位置停止。

jQuery(document).ready(function($) {

  $(".scroll").click(function(event){     
    event.preventDefault();
    $('html,body').animate({scrollTop:$(this.hash).offset().top+20}, 800);
  });
});

答案 1 :(得分:0)

使用您已有的同一行:

$('html,body').animate({scrollTop:$(this.hash).offset().top}, 800);

您只需要使用scrollTop值即可。例如

$('html,body').animate({scrollTop:$(this.hash).offset().top - 50}, 800);

答案 2 :(得分:0)

尝试使用

$('html, body').animate({scrollTop:$('#your_custom_position_id').position().top}, SPEED);