#btn1{position:fixed;bottom:10px;right:10px;} window.onload=funcition(){     var oBtn=document.getElementById("btn");     var timer=nu">
 | 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
pycct
10年前发布

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操作滚动条,如果是用户操作就清除定时器