gpt4 book ai didi

javascript - 页面跳起来而不是向上滚动

转载 作者:行者123 更新时间:2023-11-28 01:20:43 25 4
gpt4 key购买 nike

我从另一个 Stack Overflow 问题中得到这段代码,但似乎有一个小问题。当我从一个部分移动到另一个部分时,散列会正确更改,但是当我尝试向上滚动时,它会跳到最顶部,而不是平滑的手动滚动。任何帮助将不胜感激:)

HTML

<!doctype html>
<html>

<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="script.js"></script>
</head>
<header>
</header>
<body>
<div class="main">
<section id="one" class="section"></section>
<section id="two" class="section"></section>
<section id="three" class="section"></section>
<section id="four" class="section"></section>
<section id="five" class="section"></section>
<section id="six" class="section"></section>
</div>
</body>
</html>

这是 JS:

$(document).scroll(function(){
$('section').each(function(){
if (
$(this).offset().top < window.pageYOffset
//begins before top
&& $(this).offset().top + $(this).height() > window.pageYOffset
//but ends in visible area
//+ 10 allows you to change hash before it hits the top border
) {
window.location.hash = $(this).attr('id');
}
});
});

最佳答案

您可以执行 $(window).scrollTop() 而不是 pageYOffset 这将返回页面顶部距窗口中文档顶部的偏移距离.如果您希望将滚动动画设置为属性,您将希望滚动到具有 id 的元素的位置。如果你想动画滚动到页面顶部,你可以这样做

$(window).animate({
top: 0
}, 1000);

关于javascript - 页面跳起来而不是向上滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33990513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com