跟随页面滚动非常的简单,就是设置元素的top值即可,代码量只有20行。

    1.准备 HTML

    1. <div class="roll">
    2. </div>

    2.准备css

    一定要记得把动画个加上

    1. body{
    2. min-height: 4000px;
    3. }
    4. .roll{
    5. position: relative;
    6. width: 400px;
    7. height: 200px;
    8. background: red;
    9. transition: all .5s;
    10. }

    3.js逻辑

    这个 20 最初始 roll距离顶部的距离,具体看你的设置多少。

    1. const roll = document.querySelector('.roll');
    2. window.onscroll = (e) => {
    3. if(document.body.scrollTop > 20 ){
    4. roll.style.top = (document.body.scrollTop + 20) + 'px';
    5. }
    6. }