js簡單的點(diǎn)擊返回頂部效果實(shí)現(xiàn)方法
本文實(shí)例講述了js簡單的點(diǎn)擊返回頂部效果實(shí)現(xiàn)方法。分享給大家供大家參考。具體分析如下:
當(dāng)頁面特別長的時(shí)候,用戶想回到頁面頂部,必須得滾動(dòng)好幾次滾動(dòng)鍵才能回到頂部,如果在頁面右下角有個(gè)“返回頂部”的按鈕,用戶點(diǎn)擊一下,就可以回到頂部,對于用戶來說,是一個(gè)比較好的體驗(yàn)。
實(shí)現(xiàn)原理:當(dāng)頁面加載的時(shí)候,把元素定位到頁面的右下角,當(dāng)頁面滾動(dòng)時(shí),元素一直位于右下角,當(dāng)用戶點(diǎn)擊的時(shí)候,頁面回到頂部。
要點(diǎn)一:document.documentElement.clientWidth || document.body.clientWidth; 獲得可視區(qū)的寬度。后面是兼容chrome,前面是兼容其它瀏覽器。
要點(diǎn)二:oTop.style.left = screenw - oTop.offsetWidth +"px"; 當(dāng)頁面加載時(shí),讓元素的位置位于頁面最右邊,用可視區(qū)的寬度減去元素本身的寬度。
要點(diǎn)三:oTop.style.top = screenh - oTop.offsetHeight + scrolltop +"px"; 當(dāng)頁面滾動(dòng)時(shí),元素的Y坐標(biāo)位置等于可視區(qū)的高度減去元素本身的高度,加上滾動(dòng)距離。
要點(diǎn)四:document.documentElement.scrollTop = document.body.scrollTop =0; 當(dāng)點(diǎn)擊元素時(shí),讓頁面的滾動(dòng)距離為0.寫兩個(gè)是為了兼容。
上代碼:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>無標(biāo)題文檔</title> <style> body{margin:0; padding:0} #to_top{width:30px; height:40px; padding:20px; font:14px/20px arial; text-align:center; background:#06c; position:absolute; cursor:pointer; color:#fff} </style> <script> window.onload = function(){ var oTop = document.getElementById("to_top"); var screenw = document.documentElement.clientWidth || document.body.clientWidth; var screenh = document.documentElement.clientHeight || document.body.clientHeight; oTop.style.left = screenw - oTop.offsetWidth +"px"; oTop.style.top = screenh - oTop.offsetHeight + "px"; window.onscroll = function(){ var scrolltop = document.documentElement.scrollTop || document.body.scrollTop; oTop.style.top = screenh - oTop.offsetHeight + scrolltop +"px"; } oTop.onclick = function(){ document.documentElement.scrollTop = document.body.scrollTop =0; } } </script> </head> <body style="height:1000px;"> <h1>返回頂部</h1> <div id="to_top">返回頂部</div> </body> </html>
希望本文所述對大家的javascript程序設(shè)計(jì)有所幫助。
相關(guān)文章
如何利用JavaScript讀取excel文件并繪制echarts圖形
這篇文章主要介紹了如何利用JavaScript讀取excel文件并繪制echarts圖形,文章通過excel財(cái)務(wù)報(bào)表,并且需要根據(jù)這張excel表繪制成各種echarts圖形,需要了解更多詳情的小伙伴可以參考一下文章內(nèi)內(nèi)容2022-05-05js對列表中第一個(gè)值處理與jsp頁面對列表中第一個(gè)值處理的區(qū)別詳解
本文是對js對列表中第一個(gè)值處理與jsp頁面對列表中第一個(gè)值處理的區(qū)別進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11微信小程序后端實(shí)現(xiàn)授權(quán)登錄
這篇文章主要介紹了微信小程序后端實(shí)現(xiàn)授權(quán)登錄,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02javascript實(shí)現(xiàn)Table排序的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)Table排序的方法,涉及javascript針對表格對象的獲取與排序相關(guān)技巧,需要的朋友可以參考下2015-05-05文字溢出實(shí)現(xiàn)溢出的部分再放入一個(gè)新生成的div中具體代碼
說文字溢出,如何實(shí)現(xiàn)溢出的文字放入一個(gè)新生成的div中,原理就是判斷是否能在div里放下,如果不能,則在應(yīng)該斷開的地方,差入到新的div中2013-05-05layui實(shí)現(xiàn)checkbox的目錄樹tree的例子
今天小編就為大家分享一篇layui實(shí)現(xiàn)checkbox的目錄樹tree的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09