返回顶部效果之bilibili动态小火箭【1.1版本更新】


------正文内容展示,开始汲取新知识啦------

效果

2023030916170978

素材

2023030916182359

2023030916182357

 

代码

放在自定义css样式里

放在自定义javascript代码里面

放在自定义底部HTML代码里面

<!-- bilibili小火箭 -->
<div class="mb20 hidden-xs"><div class="rock fly fadeIn"></div></div>

1.1版本2023.1.3支持缓慢升入

放在自定义CSS样式里面

* {
            margin: 0;
            padding: 0;
        }

        body,html {
            width: 100%;
            height: 1500px;
        }

        .rock {
            position: fixed;
            right: 0;
            bottom: 0;
            width: 150px;
            height: 174px;
            background-image: url("//heimo.16wl.com/wp-content/uploads/2023/01/20230101131052956.png");
            overflow: hidden;
            display: none;
        }
        
        .rock:hover {
            background-image: url("//heimo.16wl.com/wp-content/uploads/2023/01/20230101131154843.png");
            animation: rockMove steps(4) .4s infinite;
        }

        rock{display: none}.fly{display: block; animation: fly 3s;}@keyframes fly{0%{opacity: 0; transform: translate3d(0, 50px, 0);} 100%{opacity: 1; transform: translate3d(0, 0, 0);}}

        @keyframes rockMove {
            0% {
                background-position-x: 0;
            }

            /* 25% {
                background-position-x: -150px;
            }

            50% {
                background-position-x: -300px;
            }

            75% {
                background-position-x: -450px;
            } */
            100% {
                background-position-x: -600px;
            }
        }

放在自定义javascript代码里面

/* bilibili小火箭 */
        // 获取当前视口的大小
        var viewHeight = document.documentElement.clientHeight;
        //小火箭添加单击事件
        document.querySelector(".rock").addEventListener("click", () => {
            //小火箭被单击,回到顶部
            // document.documentElement.scrollTop = 0;
            //当然,也可以慢慢回到顶部
            slowToTop();
        })
        //当然,这里使用节流会更好
        window.onscroll = function () {
            if (document.documentElement.scrollTop >= viewHeight) {
                //显示小火箭元素
                document.querySelector(".rock").style.display = "block";
            } else {
                //隐藏小火箭
                document.querySelector(".rock").style.display = "none";
            }
        }
        window.onresize = function () {
            viewHeight = document.documentElement.clientHeight;
        }
        /* 缓慢回到顶部 */
        function slowToTop() {
            setTimeout(() => {
                let value = document.documentElement.scrollTop;
                if(value<=0){
                    document.documentElement.scrollTop = 0;
                }else{
                    document.documentElement.scrollTop -= 80;
                    slowToTop();
                }
            }, 1000/50);
        }

 

放在自定义底部HTML代码里面

 

温馨提示:本文最后更新于2023-03-10 01:46:43,某些文章具有时效性,若有错误或已失效,请私信客服或联系知新社长
------本文内容已结束,喜欢请分享------

感谢您的访问,Ctrl+D收藏本站吧。

© 版权声明
三月 10

知岛上的今时往日

THE END
点赞0投币 分享
评论 共13条
头像
善语结善缘,恶言伤人心。(禁止发送无意义的字符)
提交
头像

昵称

夸夸Ta
夸夸
还有吗!没看够!
取消
昵称表情代码图片
    • 头像 小迪0
社区求救信号帮助是一种美德