zoukankan      html  css  js  c++  java
  • js——页面回到顶部

    很久都没有去慕课网学习学习了,刚恰好就看见了一个用的比较多的小例子——页面回到顶部,记得之前自己也是在初学web时,被这个坑了一回,因此今天特地拿来分享分享……

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>页面回到顶部</title>
        <link rel="stylesheet" type="text/css" href="mycss.css">
        <script type="text/javascript" src="myjs.js"></script>    
    </head>
    <body>
        <a href="javascript:;" id="btn" title="回到顶部"></a>
        <div class="bg">
            <img src="images/tb_bg.jpg" alt="" />
        </div>
    </body>
    </html>

    其中需要引入自己写的一个样式文件和一个js文件:

        #btn {
            width: 40px;
            height: 40px;
            position: fixed;
            display: none;
            right: 65px;
            bottom: 10px;
            background: url(images/top_bg.png) no-repeat left top;
        }
        
        #btn:hover {
            background: url(images/top_bg.png) no-repeat 0 -39px;
        }
        
        .bg {
            width: 1190px;
            margin: 0 auto;
        }

    js文件:

    //页面加载完毕后触发
    window.onload = function() {
        var obtn = document.getElementById('btn');
        var clientHeight=document.documentElement.clientHeight;//获取页面可视区域的高度
        var timer = null; //存放定时器
        var isTop=true;
        //滚动条滚动时触发
        window.onscroll=function(){
            var osTop = document.documentElement.scrollTop || document.body.scrollTop;
            if(osTop>=clientHeight){
                obtn.style.display="block";
            }else{
                obtn.style.display="none";
            }
            if(!isTop){
                clearInterval(timer);
            }
            isTop=false;
        }
        obtn.onclick = function() {
            timer = setInterval(function() { //设置定时器
                //获取滚动条距离顶部的高度
                var osTop = document.documentElement.scrollTop || document.body.scrollTop;
                var ispeed=osTop/5;
                document.documentElement.scrollTop = document.body.scrollTop =osTop-ispeed;
                isTop=true;
                if(osTop==0){
                    clearInterval(timer);
                }
            }, 30);
        }
    }

    文件存放路径:

    基本“回到顶部”效果就这样子实现,只是我不会在文章中添加动态效果(就是实时的添加这个动态效果图),求大神赐教!

  • 相关阅读:
    编译问题----宏定义一定显示未定义
    低级错误记录-程序更新后,没有显示想要的结果
    云编译的优点-普及云编译
    telecommunication communication 的区别
    学习EPC架构演进历史知识
    EOF与feof的区别
    epoll惊群问题-解决思路
    epoll多路复用机制的学习
    进程组与组长进程
    记录博客开始
  • 原文地址:https://www.cnblogs.com/zhengyeye/p/5630148.html
Copyright © 2011-2022 走看看