當頁面特別長的時候,使用者想回到頁面頂部,必須得滾動好幾次滾動鍵才能回到頂部,如果在頁面右下角有個「返回頂部」的按鈕,使用者點選一下,就可以回到頂部,對於使用者來說,是乙個比較好的體驗。
實現原理:當頁面載入的時候,把元素定位到頁面的右下角,當頁面滾動時,元素一直位於右下角,當使用者點選的時候,頁面回到頂部。
要點一:document.documentelement.clientwidth
||document.body.clientwidth; 獲得可視區的寬度。後面是相容chrome,前面是相容其它瀏覽器。
要點二:
otop.style.left
=screenw
-otop.offsetwidth +"
px"; 當頁面載入時,讓元素的位置位於頁面最右邊,用可視區的寬度減去元素本身的寬度。
要點三:
otop.style.top
=screenh
-otop.offsetheight
+scrolltop +"
px"; 當頁面滾動時,元素的y座標位置等於可視區的高度減去元素本身的高度,加上滾動距離。
要點四:
document.documentelement.scrolltop
=document.body.scrolltop =0
; 當點選元素時,讓頁面的滾動距離為0.寫兩個是為了相容。
上**:
doctype html
>
<
html
>
<
head
>
<
meta
charset
="utf-8"
/>
<
title
>無標題文件
title
>
<
style
>
body
#to_top
style
>
<
script
>
window.onload
=function
()otop.onclick
=function
()}
script
>
head
>
<
body
style
="height:1000px;"
>
<
h1>返回頂部
h1>
<
div
id="to_top"
>返回頂部
div>
body
>
html
>
原生JS實現返回頂部功能
當你點選 返回頂部 按鈕,頁面會自動滾動到頂部,這種做法被許多 採用 之前我用jquery實現了返回頂部功能 見jquery實現鏈結 並在許多專案中使用了這個jquery版本實現。但最近我將注意力轉向了 效能方面,試圖提高頁面的載入速度。其中最大的改進便是移除了jquery依賴改用原生js實現 返回...
用js實現簡單的點選左右運動
如下圖,點選向右,方塊向右移動,點選向左,方塊向左移動。可以用setinterval來實現過多長時間,div移動多長的距離來實現運動效果。要點一 如果元素的左邊距離小於目標距離,則是正向移動,否則是負向移動 if run.offsetleft 要點二 如果元素的左邊距離等於目標距離,停止定時器,否則...
原生js實現簡潔的返回頂部元件
本文內容相當簡單,所以沒有發布到首頁,如果你不幸看到,那只能是我這篇文章的榮幸,謝謝你的大駕光臨 本部落格返回頂部的功能就使用的是這個元件 由於思路跟 都很簡單,所以就直接貼出實現細節了 var backtop function dome,distance 100 dome.onclick func...