gpt4 book ai didi

javascript - 平滑上下滚动到多个 anchor

转载 作者:行者123 更新时间:2023-11-28 04:38:13 26 4
gpt4 key购买 nike

我是 Web 开发的新手,我想制作一个可以使用侧边导航栏向上和向下滚动到多个 anchor 的网站。

这是我的html代码,

<body>
<div id="mySideDiv" class="divAnimate">
<p id="head">HYUNJAE<br>WOO</p>
<div class="side"><a href="#home">HOME</a></div>
<div class="side"><a href="#portfolio">PORTFOLIO</a></div>
<div class="side"><a href="#contact">CONTACT</a></div>
<div class="side"><a href="#about">ABOUT</a></div>
</div>

<div class="mid-cont homePage" id="main">
<article class="panel"><a id="home"></a>
<p> Welcome to My Website </p>
...
</article>

<article class="panel"><a id="portfolio"></a>
<p> PORTFORLIO </p><br>
...
</article>

<article class="panel"><a id="contact"></a>
<p> CONTACT </p><br>
...
</article>

<article class="panel"><a id="about"></a>
<p> ABOUT </p><br>
...
</article>

我只使用标签进行此操作,但我希望每次单击侧边栏时都能平滑过渡/滚动到 anchor (我的侧边栏固定在适当的位置)。我在互联网上进行了搜索,发现使用 jQuery 或 javascript 的答案很少,但它们仅在从上到下滚动时才有效。每当我尝试从 CONTACT 转到 PORTFOLIO 时,它会将屏幕放在 HOME 和 PORTFOLIO 之间的某个位置。我觉得答案会很明显,但我不明白为什么...请帮助我。

最佳答案

你查了吗this回答?您的 html 代码将是:

<div class="side"><a href="#home" onclick="SmoothScroll()">HOME</a></div>

function SmoothScroll() {
e.preventDefault();
var target = $(this).attr("href");
$('html, body').animate({
scrollTop: $(""+target).offset().top
}, 2000);}

关于javascript - 平滑上下滚动到多个 anchor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41359323/

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