JS实现效果-点击按钮返回到页面顶部

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>JS实现效果-点击按钮返回到页面顶部</title>
        <style>
            #container{margin:0;padding:0;}
            #box1,#box2,#box3,#box4{width:100%;height:500px;}
            #box1{background: deepskyblue;}
            #box2{background: yellowgreen;}
            #box3{background: darkred;}
            #box4{background: blueviolet;}
            #icon{width:50px;height:50px;font-size: 20px;background: #CDCC7D;line-height: 50px;text-align: center;position: fixed;bottom:20px;right:20px;color:#666;font-weight: bolder;}
        </style>
    </head>
    <body>
        <div id="container">
            <div id="box1"></div>
            <div id="box2"></div>
            <div id="box3"></div>
            <div id="box4"></div>   
            <div id="icon"></div>
        </div>
    </body>
    <script type="text/javascript">
        window.onload = function(){
            var btn = document.getElementById("icon");
            var timer = null;
            var oScroll = true;
            //滚动条事件,触发时清空定时器
            window.onscroll = function(){
                if(!oScroll){
                    clearInterval(timer);
                }
                oScroll = false;
            }
            btn.onclick = function(){
                //加入定时器让他又快到慢滚动到顶部
                timer = setInterval(function(){
                    //获取当前scrollTop的高度位置(兼容ie和chrom浏览器)
                    var oTop = document.documentElement.scrollTop || document.body.scrollTop;
                    //设置速度由快到慢
                    var ispeed = Math.floor(-oTop / 7);
                    document.documentElement.scrollTop = document.body.scrollTop = oTop + ispeed;
                    oScroll = true;
                    if(oTop == 0){
                        clearInterval(timer);
                    }
                },30);
            }
        }
    </script>
</html>

以上代码直接粘贴复制即可查看效果,兼容ie和chrome浏览器!!!

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值