需求
页面上有一排按钮,悬浮在窗口顶端,不随页面滑动而滑动,这一组按钮分别对应的是页面的各个部分,点击按钮,页面定位到对应的位置。
需求分析
拿到这个需求,很自然的想到,解决这个最简单的方法是使用锚点(能靠HTML和css解决的,尽量不使用js
解法
想到使用锚点事情就比较简单了,借用a标签的href定位,很快就写了一个Demo,
完整代码:https://codepen.io/yangyang11...
关键代码:
<div id="content">
<div class="btn-container">
<a class="btn" href="#anchor1">锚点1</a>
<a class="btn" href="#anchor2">锚点2</a>
<a class="btn" href="#anchor3">锚点3</a>
</div>
<div id="anchor1" class="anchor-con">anchor1</div>
<div id="anchor2" class="anchor-con">anchor2</div>
<div id="anchor3" class="anchor-con">anchor3</div>
</div>
这时候,点击悬浮的button,页面可以实现快速定位。
坑1
点了几遍之后立马就发现了一个坑,因为按钮是悬浮的,而锚点定位,默认是定位到窗口顶端,这样定位到的区域就会有一部分被悬浮的按钮挡住