js 导航滚动 滚动条原理讲解

本文介绍了如何在网页中实现类似Word导航窗口的效果,当点击左侧导航时,右侧内容区域相应滚动到对应标题。讲解了滚动条的原理,包括可视区域、内容高度和滚动条长度的关系,并提供了一个简单的解决方案,通过动态计算和设置min-height来实现目标元素滚动到顶部的效果。
摘要由CSDN通过智能技术生成

在制作导航时,希望左边的导航和右侧的内容区域可以联动显示,例如:左侧导航点到某个标题后,右侧的内容区域自动将此标题置顶

像Word中的导航窗口:

点击导航中的“文章2”时,右侧的内容区,自动将“文章2”内容滚动到置顶位置进行显示。

但是再点击“文章3”“文章4”时,右侧的内容区域就无法将其内容,滚动到置顶位置了。

滚动条展示原理图:

从上图可知:

可视区域高度/内容高度 = 滚动条长度/滚动条总长;

可滚动距离=内容高度-可视区域高度;

而 从图又可知:滚动条总长 = 可视区域高度。

假设内容高度=200,可视区域长度 =100,,当有个【目标元素】距离顶部125,当我们想让其滚动到顶部时,就会出现如下情况:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

29号同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值