JavaScript返回頂部詳解
返回網頁頂部的功能大家應該都很熟悉,作用更是不用多說。
本章節就介紹一下使用原生JavaScript實現此功能。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> * { margin:0px; padding:0px; } #mayi { width:20px; height:1000px; background-color:green; margin:0px auto; } #top { position:fixed; right:10px; bottom:50px; width:20px; height:70px; background-color:red; cursor:pointer; display:none; font-size:12px; } </style> <script type="text/javascript"> var x; var otop; function myScroll() { var timer=setInterval(function(){ var moveby=15; x-=Math.ceil(x*moveby/100); if(x<=0){ x=0; clearInterval(timer); } if(document.body.scrollTop){ document.body.scrollTop=x; } else{ document.documentElement.scrollTop=x; } },20); } function switchD(){ x=document.body.scrollTop||document.documentElement.scrollTop; if(x>100){ otop.style.display="block"; } else{ otop.style.display="none"; } } window.onload=function() { otop=document.getElementById("top"); window.onscroll=switchD; otop.onclick=myScroll; } </script> </head> <body> <div id="mayi">螞蟻部落歡迎您</div> <div id="top">返回頂端</div> </body> </html>
當向下拖動滾動條的一定的距離的時候,出現返回頂部按鈕;點選按鈕能夠平滑的返回網頁頂部。
一.實現原理:
(1).如何實現向下拖動一定距離才會出現按鈕:
為window註冊onscroll事件處理函式,當拖動滾動條時通過x=document.body.scrollTop||document.documentElement.scrollTop獲取滾動的距離。在預設狀態下,按鈕是隱藏的,當向下拖動的距離超過指定距離就會將按鈕設定為顯示狀態,如果小於指定距離就會隱藏。
(2).如何實現返回頂部:
點選按鈕會執行為此按鈕註冊的click事件處理函式,此函式通過定時器函式setInerval不斷設定scrollTop值,直到為0,這樣就實現了返回頂部效果,原理大體如此。
二.相關閱讀:
(1).setInterval()參閱setInterval()一章節。
(2).Math.ceil()參閱javascript Math.ceil()一章節。
(3).clearInterval()參閱window clearInterval()一章節。
(4).document.body.scrollTop||document.documentElement.scrollTop參閱document.documentElement.scrollTop瀏覽器相容一章節。
(5).onscroll事件參閱javascript scroll 事件一章節。
相關文章
- 返回頂部寫法
- 簡單版—返回頂部
- js之返回網頁頂部JS網頁
- div有滾動條 返回頂部
- 網站返回頂部功能視訊網站
- JavaScript點選按鈕返回底部詳解JavaScript
- js返回頁面頂部的實現(layui)JSUI
- [前端外掛] js返回頂部 效果實現前端JS
- [外掛擴充套件]返回頂部ReturnTop外掛套件
- 網站返回頂部jquery js實現程式碼方式案例網站jQueryJS
- 前端三部曲:詳解JavaScript中this的指向前端JavaScript
- typeof返回值詳解
- vue js 獲取滾動距離 以及 返回頂部按鈕VueJS
- mui裡點選input框是為什麼會返回頂部UI
- JavaScript 元素距離視窗頂部的距離JavaScript
- 原生JavaScript實現頁面回到頂部的功能JavaScript
- JavaScript this詳解JavaScript
- 一行程式碼搞定使用LinearLayoutManager一鍵返回頂部行程
- JavaScript獲取元素距離文件頂部的距離JavaScript
- 詳解JavaScript原型JavaScript原型
- JavaScript之this詳解JavaScript
- JavaScript事件詳解JavaScript事件
- JavaScript Promise 詳解JavaScriptPromise
- JavaScript中的this詳解JavaScript
- JavaScript小球碰壁詳解JavaScript
- JavaScript表格排序詳解JavaScript排序
- JavaScript arguments物件詳解JavaScript物件
- JavaScript閉包詳解JavaScript
- Java 內部類詳解Java
- Java內部類詳解Java
- 回到頂部效果之加速置頂
- chrome瀏覽器頁面獲取繫結返回頂部動畫事件外掛Chrome瀏覽器動畫事件
- Java內部類詳解--匿名內部類Java
- 回到頂部和回到頂部按鈕的顯示隱藏
- 玩轉 JavaScript 之詳解 thisJavaScript
- Javascript—閉包詳解(3)JavaScript
- JavaScript 打字機效果詳解JavaScript
- JavaScript 秒錶效果詳解JavaScript