當頁面特別長的時候,用戶想回到頁面頂部,必須得滾動好幾次滾動鍵才能回到頂部,如果在頁面右下角有個“返回頂部”的按鈕,用戶點擊一下,就可以回到頂部,對于用戶來說,是一個比較好的體驗。
HTML:
- <input id="btn1" type="button" value="回到頂部" />
CSS:
- #btn1{position:fixed;bottom:10px;right:10px;}
JS:
- 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操作滾動條,如果是用戶操作就清除定時器
以上所述就是本文的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答
圖片精選