JS实现回到顶部特效详解编程语言

下面来说说最近学习到的回到顶部特效:

<input id="btn1" type="button" value="回到顶部" />
#btn1{position:fixed;bottom:10px;right:10px;}
window.onload=funcition(){ 
    var oBtn=document.getElementById("btn"); 
    var timer=null; 
    //申明一个变量看是否为系统还是用户滚动 
    var sBys=true; 
    window.onscroll=funcition(){ 
        if(!sBys){ 
            clearInterval(timer); 
        } 
        sBys=false; 
    } 
    oBtn.onclick=funcition(){ 
       timer = setInterval(funcition(){ 
            //获取scrollTop 
            var scrollTop=document.documentElement.scrollTop||document.body.scrollTop; 
            //当点击按钮回到顶部时计算缓冲速度 
            var ispeed=Math.floor(-scrollTop/8); 
            if(scrollTop==0){ 
                clearInterval(timer) 
            } 
            sBys=true; 
            document.documentElement.scrollTop=document.body.scrollTop=scrollTop+ispeed; 
        },30) 
    } 
}

知识点:1.计算速度(缓冲)向下取整

             2.当scrollTop==0时需要清除定时器

             3.需要判断是用户还是js操作滚动条,如果是用户操作就清除定时器

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/8700.html

(0)
上一篇 2021年7月18日 22:18
下一篇 2021年7月18日 22:18

相关推荐

发表回复

登录后才能评论