最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue實現滑動超出指定距離回頂部功能

 更新時間:2019年07月31日 16:17:35   作者:weixin_43421652  
這篇文章主要為大家詳細介紹了vue實現滑動超出指定距離回頂部功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了vue實現滑動超出指定距離回頂部功能,供大家參考,具體內容如下

效果圖展示:

1、當頁面滑動時執(zhí)行scrollToTop ()函數,判斷滑動的距離是否超出指定距離,注意下面獲取getElementsByClassName時,是你被滑動標簽的class。

mounted() {
  window.addEventListener('scroll', this.scrollToTop, true)
 }
scrollToTop () {
  let This = this
  let dom = document.getElementsByClassName('content')[0];//獲取滑動模塊的信息(注意class別寫錯)
  This.scrollTop = dom.scrollTop;
  if (This.scrollTop > 200) {
    This.btnFlag = true
  } else {
    This.btnFlag = false
  }
}

2、當超出指定距離會出來向上的小圖標,點擊執(zhí)行backTop ()函數回頂部。圖標我是用的阿里矢量圖標引入到項目中,樣式自己調一下。

// 點擊圖標回到頂部方法,加計時器是為了緩慢回到頂部
backTop () {
  let This = this
  let timer = setInterval(() => {
    let ispeed = Math.floor(-This.scrollTop / 5)
    document.getElementsByClassName('content')[0].scrollTop = This.scrollTop + ispeed
    if (This.scrollTop === 0) {
      clearInterval(timer)
    }
  }, 16)
},

完整代碼請看下面:

<template>
 <div class="scrollTop-wrap">
  <div v-if="btnFlag" class="go-top">
    <li class="iconfont iconhuidaodingbu" @click="backTop()"></li>
  </div>
 </div>
</template>
<script>
 import { httpGetMethod } from '../common/httpService'
 export default {
  name: 'scrollTop',
  data: function () {
   return {
    btnFlag:false,
    scrollTop:0//當前滑動距離
   }
  },
  mounted() {
    window.addEventListener('scroll', this.scrollToTop, true)
  },
  destroyed () {
    window.removeEventListener('scroll', this.scrollToTop, true)
  },
  methods: {
    // 點擊圖標回到頂部方法,加計時器是為了緩慢回到頂部
    backTop () {
      let This = this
      let timer = setInterval(() => {
        let ispeed = Math.floor(-This.scrollTop / 5)
        document.getElementsByClassName('content')[0].scrollTop = This.scrollTop + ispeed
        if (This.scrollTop === 0) {
          clearInterval(timer)
        }
      }, 16)
    },
    // 計算距離頂部的高度,當高度大于200顯示回頂部圖標,小于200則隱藏
    scrollToTop () {
      let This = this
      let dom = document.getElementsByClassName('content')[0];//獲取滑動模塊的信息(注意class別寫錯)
      This.scrollTop = dom.scrollTop;
      if (This.scrollTop > 200) {
        This.btnFlag = true
      } else {
        This.btnFlag = false
      }
    }
  }
 }
</script>
<style lang="scss">
 @import '../styles/mixin';
 .scrollTop-wrap {
  position: relative;
  .go-top{
   position: absolute;
   top: 430px;
   left: 260px;
   z-index: 15;
   .iconhuidaodingbu{
     font-size: 30px;
     color: #87878A;
     background-color:#fff;
     border-radius: 50%;
   }
  }
 }
</style>

在其他頁面引用一下:

<template>
 <div class="wtll-wrap">
  <div calss="content">
     這里是你的滑動內容
  </div>
  <scrollTop></scrollTop>
 </div>
</template>
<script>
 import scrollTop from '../components/scrollTop'
 export default {
  name: 'wtll',
  data: function () {
   return {
   }
  },
  components: {
   scrollTop
  },
  methods: {
  }
 }
</script>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • element ui loading加載開啟與關閉方式

    element ui loading加載開啟與關閉方式

    這篇文章主要介紹了element ui loading加載開啟與關閉方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue中的Token過期驗證與動態(tài)路由重定向詳解

    Vue中的Token過期驗證與動態(tài)路由重定向詳解

    這篇文章主要為大家詳細介紹了如何在 Vue 項目中實現 Token 過期驗證,并根據 Token 的有效期動態(tài)重定向用戶到首頁或登錄頁,感興趣的小伙伴可以了解下
    2025-03-03
  • Vue自定義toast組件的實例代碼

    Vue自定義toast組件的實例代碼

    這篇文章主要介紹了Vue自定義toast組件的相關資料,需要的朋友可以參考下
    2018-08-08
  • Vue中簡單的虛擬DOM是什么樣

    Vue中簡單的虛擬DOM是什么樣

    這些年寫前端vue時經常碰到虛擬DOM這個單詞,但都是聽到就算了,左耳進右耳出,知道有這么個東西就完了,因為感覺也沒有影響我實現公司的產品業(yè)務邏輯。今天在這里想花點時間探討下虛擬DOM相關的知識,給自己補補課
    2022-10-10
  • 淺析Vue3中通過v-model實現父子組件的雙向數據綁定及利用computed簡化父子組件雙向綁定

    淺析Vue3中通過v-model實現父子組件的雙向數據綁定及利用computed簡化父子組件雙向綁定

    這篇文章主要介紹了淺析Vue3中通過v-model實現父子組件的雙向數據綁定及利用computed簡化父子組件雙向綁定,需要的朋友可以參考下
    2022-12-12
  • Vue.js劃分組件的方法

    Vue.js劃分組件的方法

    這篇文章主要介紹了Vue.js劃分組件的方法,需要的朋友可以參考下
    2017-10-10
  • el-table如何添加loading效果

    el-table如何添加loading效果

    這篇文章主要介紹了el-table如何添加loading效果問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue中如何使用ElementUI實現圖片上傳

    Vue中如何使用ElementUI實現圖片上傳

    這篇文章主要介紹了Vue中如何使用ElementUI實現圖片上傳,這里用了elementUI的一個簡單的例子,給大家介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • vue中this.$refs的坑及解決

    vue中this.$refs的坑及解決

    這篇文章主要介紹了vue中this.$refs的坑及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Vue插槽簡介和使用示例詳解

    Vue插槽簡介和使用示例詳解

    插槽就是子組件中的提供給父組件使用的一個占位符,用<slot></slot>?表示,父組件可以在這個占位符中填充任何模板代碼,如?HTML、組件等,填充的內容會替換子組件的<slot></slot>標簽,這篇文章主要介紹了Vue插槽的理解和使用,需要的朋友可以參考下
    2023-03-03

最新評論

交口县| 丽水市| 沁水县| 汕尾市| 比如县| 昌吉市| 陈巴尔虎旗| 广汉市| 夏津县| 桃源县| 明光市| 青冈县| 出国| 普格县| 丹阳市| 财经| 禹州市| 肃宁县| 巫山县| 东城区| 五莲县| 冀州市| 云安县| 响水县| 恩平市| 于田县| 集安市| 光泽县| 汕头市| 武隆县| 芒康县| 定西市| 庆元县| 浦城县| 封开县| 郁南县| 惠州市| 南阳市| 武义县| 饶河县| 晋中市|