欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于JavaScript實現(xiàn)回到頁面頂部動畫代碼

 更新時間:2016年05月24日 13:46:42   作者:daisykoo  
這篇文章主要介紹了基于JavaScript實現(xiàn)回到頁面頂部動畫代碼的相關(guān)資料,代碼簡單易用,非常實用,需要的朋友可以參考下

最近做的都是前端的項目,很多項目都有回到頂部的需求,下面把我寫js代碼做個筆錄,方便以后查找。

發(fā)現(xiàn)還可以添加從快到慢的動畫效果和隨時下拉滾動條停止?jié)L動的功能, 參考了imooc上相關(guān)課程,最終實現(xiàn)JS代碼如下:

//頁面加載后觸發(fā)
window.onload = function(){
var btn = document.getElementById('btn');
var timer = null;
var isTop = true;
//獲取頁面可視區(qū)高度
var clientHeight = document.documentElement.clientHeight;
//滾動條滾動時觸發(fā)
window.onscroll = function() {
//顯示回到頂部按鈕
var osTop = document.documentElement.scrollTop || document.body.scrollTop;
if (osTop >= clientHeight) {
btn.style.display = "block";
} else {
btn.style.display = "none";
};
//回到頂部過程中用戶滾動滾動條,停止定時器
if (!isTop) {
clearInterval(timer);
};
isTop = false;
};
btn.onclick = function() {
//設(shè)置定時器
timer = setInterval(function(){
//獲取滾動條距離頂部高度
var osTop = document.documentElement.scrollTop || document.body.scrollTop;
var ispeed = Math.floor(-osTop / 7);
document.documentElement.scrollTop = document.body.scrollTop = osTop+ispeed;
//到達(dá)頂部,清除定時器
if (osTop == 0) {
clearInterval(timer);
};
isTop = true;
},30);
};
};

以上內(nèi)容是小編給大家介紹的基于JavaScript實現(xiàn)回到頁面頂部動畫代碼,代碼簡單易懂,所有沒給大家附太多的注釋,如果大家在參考過程中發(fā)現(xiàn)有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!

相關(guān)文章

  • 一文帶你理解JavaScript 觀察者模式

    一文帶你理解JavaScript 觀察者模式

    觀察者模式(Observer Pattern)是一種行為型設(shè)計模式,它定義了一種一對多的依賴關(guān)系,讓多個觀察者對象同時監(jiān)聽某一個主題對象,本文將帶你詳細(xì)了解JavaScript 觀察者模式,,需要的朋友可以參考下
    2023-05-05
  • JavaScript canvas實現(xiàn)文字時鐘

    JavaScript canvas實現(xiàn)文字時鐘

    這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實現(xiàn)文字時鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • javascript 使用sleep函數(shù)的常見方法詳解

    javascript 使用sleep函數(shù)的常見方法詳解

    這篇文章主要介紹了javascript 使用sleep函數(shù)的常見方法,結(jié)合實例形式分析總結(jié)了javascript sleep函數(shù)的功能、常見使用方法與操作注意事項,需要的朋友可以參考下
    2020-04-04
  • js檢測IE8及以下瀏覽器版本并做出提示的函數(shù)代碼

    js檢測IE8及以下瀏覽器版本并做出提示的函數(shù)代碼

    這篇文章主要介紹了js檢測IE8及以下瀏覽器版本并做出提示的函數(shù)代碼,需要的朋友可以參考下
    2023-02-02
  • Javascript讓DEDECMS告別手寫Tag

    Javascript讓DEDECMS告別手寫Tag

    dedecms在編輯修改內(nèi)容時,TAG標(biāo)簽需要手動輸,中文的Tag, 中間還得用半角字符','分隔, 輸入法切來切去很不方便, 于是動手改后臺代碼, 利用后臺的tags_main.php, 讓dedecms添加內(nèi)容時能去tags_main里去選擇.
    2014-09-09
  • JAVASCRIPT keycode總結(jié)

    JAVASCRIPT keycode總結(jié)

    JAVASCRIPT中keycode總結(jié),方便需要控制keycode的朋友
    2009-02-02
  • 深入了解JavaScript代碼覆蓋

    深入了解JavaScript代碼覆蓋

    這篇文章主要介紹了深入了解JavaScript代碼覆蓋 ,代碼覆蓋提供有關(guān)是否以及可選地應(yīng)用程序的某些部分被執(zhí)行的頻率的信息。它通常用于判定一個測試套件執(zhí)行特定代碼庫的全面程度。,需要的朋友可以參考下
    2019-06-06
  • JavaScript使用技巧精萃[代碼非常實用]

    JavaScript使用技巧精萃[代碼非常實用]

    為方便大家查找不做分頁設(shè)置ctrl+F即可
    2008-11-11
  • js prototype截取字符串函數(shù)

    js prototype截取字符串函數(shù)

    prototype它是用Javascript寫好的一些API,包括對Javascript中的類如String,Array等進(jìn)行的擴(kuò)充,把JS文件嵌入后直接用就行了
    2010-04-04
  • javascript對象的相關(guān)操作小結(jié)

    javascript對象的相關(guān)操作小結(jié)

    下面小編就為大家?guī)硪黄猨avascript對象的相關(guān)操作小結(jié)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05

最新評論