如何平滑向下滚动到页面的特定部分?
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<a href="#" class="scrollToBottom"><img src="images/godown.png" alt="Down Arrow" width="116" /></a>
<script type="text/javascript">
$(document).ready(function(){
// Scroll page to the bottom
$('a.scrollToBottom').click(function(){
$('html, body, .content').animate({scrollTop: $(document).height()}, 1500);
return false;
});
})
</script>
现在代码的作用是,当我点击“godown.png”图像时,它会起作用,但它会到达页面底部的末尾。无论如何要让它走到中间?我如何用#middle或其他东西定义中间?
答案 0 :(得分:2)
为了顺利添加 e.preventDefault(); 在滚动功能中
$('a.scrollToBottom').click(function(e){
e.preventDefault();
$('html, body, .content').animate({scrollTop: $(document).height()}, 1500);
});
答案 1 :(得分:0)
要滚动到页面的特定部分,您可以使用jQuery函数offset [http://api.jquery.com/offset/]来计算元素相对于页面的偏移量。然后,您可以滚动到文档中的某个位置。
实施例
HTML:
<a href="#">scroll to c</a>
<div id="a">a</div>
<div id="b">b</div>
<div id="c">c</div>
使用jQuery js:
$("a").click(function(e){
var targetOffset= $("#c").offset().top;
$('html, body').animate({scrollTop: targetOffset}, 1500);
e.preventDefault();
});
答案 2 :(得分:0)
尝试:)
$("a").click(function(e){
e.preventDefault();
var targetOffset = $(".content").offset().top + 1500;
$('html, body').animate({scrollTop: targetOffset}, 0);
});