基於js實現點選按鈕回到頂部
初學前端,用於記錄
- 向下滑動頁面200,顯示"回到頂部"按鈕,否則隱藏"回到頂部"按鈕
- 點選"回到頂部"按鈕,頁面緩動回到0
// 封裝獲取頁面高度的函式
function getScroll(){
return {
top: window.pageYoffset||
document.documentElement.scrollTop||document.body.scrollTop,
left: window.pageXoffset||document.documentElement.scrollLeft
||document.body.scrollLeft
}
}
// 獲取按鈕
var btn = document.getElementById("btn");
// 定義定時器
var timer = null;
// 定義布林值,判斷是否到達頂部
var isTop = true;
window.onload = function(){
// 註冊頁面滾動事件
window.onscroll = function(){
// 獲取當前頁面滾動值
var scrollTop = getScroll().top;
// 頁面滾動值大於200顯示按鈕,否則隱藏按鈕
btn.style.display = scrollTop >= 200?"block":"none";
// 定時器滾動時,如果手動滾動,清理定時器
if(!isTop){
clearInterval(timer);
}
// isTop = false,停住在當前頁面
isTop = false;
}
}
// 註冊按鈕點選事件
btn.onclick = function(){
// 設定定時器
timer = setInterval(function(){
// 獲取當前頁面滾動值 假設現在為200
var scrollTop = getScroll().top;
// 設定速度差 speed = -200 / 6;
var speed = Math.floor( -scrolltop / 6);
// 頁面滾動值 = 200+(-200/6);
document.body.scrollTop=document.documentElement.scrollTop=scrollTop+speed;
// 阻止滾動事件清理定時器
isTop = true;
// 頁面滾動值 = 0 清理定時器
if(scrollTop == 0){
clearInterval(timer);
}
},20);
}
相關文章
- js實現點選回到頂部JS
- 懸浮按鈕點選回到頂部FloatingActionButton
- 手機直播原始碼,點選按鈕,立即回到頂部原始碼
- 直播軟體搭建,點選按鈕自動回到頂部
- 回到頂部和回到頂部按鈕的顯示隱藏
- 簡單實現點選回到頂部
- 從頁面底部回到頂部+動畫效果 & 翻頁後從按鈕處回到頁面頂部動畫
- CSS_導航欄+固定浮動的回到頂部按鈕CSS
- js——頁面回到頂部JS
- vue中實現回到頂部功能Vue
- 點選回車實現按鈕點選功能
- 直播軟體搭建,利用原生JS實現回到頂部以及吸頂效果JS
- app直播原始碼,利用原生JS實現回到頂部以及吸頂效果APP原始碼JS
- js實現的按鈕響應點選回車事件JS事件
- js實現的按鈕不用人為點選就觸發點選事件JS事件
- RecyclerView滑動到底部的時候點選按鈕直接返回頂部View
- JS實現點選按鈕複製當前介面的URLJS
- 每天一邊js -- 回到頂部JS
- 如何點選一個按鈕實現列印
- 點選按鈕實現數字增加效果
- jQuery返回頂部按鈕詳解jQuery
- js向下滾動一段距離出現返回頂部按鈕JS
- 原生JavaScript實現頁面回到頂部的功能JavaScript
- 點選按鈕實現狀態切換效果
- 點選按鈕實現圖片切換效果
- Vue中配合clipboard.js實現點選按鈕複製內容VueJS
- jQuery之回到頂部jQuery
- Jquery回到頂部功能jQuery
- css實現網頁”回到頂部“的程式碼效果CSS網頁
- vue js 獲取滾動距離 以及 返回頂部按鈕VueJS
- 點選按鈕實現文字放大和縮小功能
- 專案分享八:基於按鈕點選事件的彈窗事件
- jquery實現的按鈕點選後60秒後才能夠再點選jQuery
- 點選按鈕實現div的顯示和隱藏
- 點選返回頂部效果實現程式碼詳解
- JS實現點選引數皮膚按鈕顯示或隱藏資料JS
- Dcat-admin新增頂部右側按鈕
- 這幾種方法幫你快速實現回到頁面頂部