JS 仿淘宝固定右侧侧边栏(可返回顶部)案例

本文介绍如何实现网页侧边栏随滚动固定位置,并在页面底部显示返回顶部按钮,点击后通过缓动动画平滑回到页面顶部。

我们先看一下淘宝的侧边栏:
请添加图片描述

功能需求

1.原先侧边栏是绝对定位
2.当页面滚动到一定位置,侧边栏改为固定定位
3.页面继续滚动,会让返回顶部显示出来

比如说这是我们的页面:
在这里插入图片描述
当被页面卷去的部分刚好为header高度时,我们就将右侧侧边栏改为固定定位
当页面滚动到main主体部分时,让侧边栏显示返回顶部字样,点击返回顶部可以通过缓动动画滑到顶部

案例分析:

1.需要用到页面滚动事件scroll因为是页面滚动,所以事件源是document
2.滚动到某个位置,就是判断页面被卷去的上部值。
3.页面被卷去的头部∶可以通过window.pageYOffset获得 如果是被卷去的左侧window.pageXOffset
4.注意,元素被卷去的头部是element.scrollTop ,如果是页面被卷去的头部则是window.pageYOffset

示例代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .slider-bar {
     
     
            position: absolute;
            left: 50%;
            top: 300px;
            margin-left: 600px;
            width: 45px;
            height: 130px
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Frank.30

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

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

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

打赏作者

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

抵扣说明:

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

余额充值