gpt4 book ai didi

javascript - 动画 ScrollTop 用于单页 anchor 的侧面导航

转载 作者:行者123 更新时间:2023-11-30 16:44:18 25 4
gpt4 key购买 nike

我正在尝试在单个页面上的 anchor 之间平滑过渡动画,并在突出显示的一侧设置固定导航。我是一个完全的新手,所以我不知道如何实现“( document.body ).animate”或者进行转换所必需的东西。

长话短说:平滑滚动到 anchor 而不是跳转到 anchor

这是js:

$('#firstlink').addClass('active');

$(window).scroll(function(){
$('.active').each(function(){
$(this).removeClass('active');
});

var scrollTop = $(window).scrollTop();


if($(window).scrollTop() + $(window).height() == $(document).height())
$('#fifthlink').addClass('active');
else if (scrollTop > $("#fifth").position().top)
$('#fifthlink').addClass('active');
else if (scrollTop > $("#fourth").position().top)
$('#fourthlink').addClass('active');
else if (scrollTop > $("#third").position().top)
$('#thirdlink').addClass('active');
else if (scrollTop > $("#second").position().top)
$('#secondlink').addClass('active');
else
$('#firstlink').addClass('active');
});

这是完整的 jsfiddle:https://jsfiddle.net/e03u0kqe/

最佳答案

这可能在其他地方得到了回答,但应该这样做:

    $('#sidenav a').on('click', function(e) {
e.preventDefault();
var target = $(this).attr('href');
var scrollTo = $(target).offset().top;
var duration = 1000;

$('body').animate({
scrollTop: scrollTo
}, duration);
});

在您的窗口滚动事件之后添加它。

https://jsfiddle.net/e03u0kqe/2/

关于javascript - 动画 ScrollTop 用于单页 anchor 的侧面导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31483131/

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