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

vue實(shí)現(xiàn)滑動(dòng)超出指定距離回頂部功能

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

本文實(shí)例為大家分享了vue實(shí)現(xiàn)滑動(dòng)超出指定距離回頂部功能,供大家參考,具體內(nèi)容如下

效果圖展示:

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

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

2、當(dāng)超出指定距離會(huì)出來向上的小圖標(biāo),點(diǎn)擊執(zhí)行backTop ()函數(shù)回頂部。圖標(biāo)我是用的阿里矢量圖標(biāo)引入到項(xiàng)目中,樣式自己調(diào)一下。

// 點(diǎn)擊圖標(biāo)回到頂部方法,加計(jì)時(shí)器是為了緩慢回到頂部
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)
},

完整代碼請(qǐng)看下面:

<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//當(dāng)前滑動(dòng)距離
   }
  },
  mounted() {
    window.addEventListener('scroll', this.scrollToTop, true)
  },
  destroyed () {
    window.removeEventListener('scroll', this.scrollToTop, true)
  },
  methods: {
    // 點(diǎn)擊圖標(biāo)回到頂部方法,加計(jì)時(shí)器是為了緩慢回到頂部
    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)
    },
    // 計(jì)算距離頂部的高度,當(dāng)高度大于200顯示回頂部圖標(biāo),小于200則隱藏
    scrollToTop () {
      let This = this
      let dom = document.getElementsByClassName('content')[0];//獲取滑動(dòng)模塊的信息(注意class別寫錯(cuò))
      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">
     這里是你的滑動(dòng)內(nèi)容
  </div>
  <scrollTop></scrollTop>
 </div>
</template>
<script>
 import scrollTop from '../components/scrollTop'
 export default {
  name: 'wtll',
  data: function () {
   return {
   }
  },
  components: {
   scrollTop
  },
  methods: {
  }
 }
</script>

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue之帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口

    vue之帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口

    這篇文章主要介紹了vue之帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • vue+element實(shí)現(xiàn)圖片上傳及裁剪功能

    vue+element實(shí)現(xiàn)圖片上傳及裁剪功能

    這篇文章主要為大家詳細(xì)介紹了vue+element實(shí)現(xiàn)圖片上傳及裁剪功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • vue2.0嵌套路由實(shí)現(xiàn)豆瓣電影分頁功能(附demo)

    vue2.0嵌套路由實(shí)現(xiàn)豆瓣電影分頁功能(附demo)

    這篇文章主要介紹了vue2.0嵌套路由實(shí)現(xiàn)豆瓣電影分頁功能(附demo),這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。
    2017-03-03
  • vue使用mixins優(yōu)化組件

    vue使用mixins優(yōu)化組件

    這篇文章主要介紹了vue如何使用mixins優(yōu)化組件,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-04-04
  • vue頁面加載閃爍問題的解決方法

    vue頁面加載閃爍問題的解決方法

    這篇文章主要介紹了vue頁面加載閃爍問題的解決方法,文中給大家提到了v-if 和 v-show 的區(qū)別,解決vue頁面加載時(shí)出現(xiàn){{message}}閃退的兩種方法,感興趣的朋友一起看看吧
    2018-03-03
  • vue中使用element ui的彈窗與echarts之間的問題詳解

    vue中使用element ui的彈窗與echarts之間的問題詳解

    這篇文章主要介紹了vue中使用element ui的彈窗與echarts之間的問題詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 使用vuex的時(shí)候,出現(xiàn)this.$store為undefined問題

    使用vuex的時(shí)候,出現(xiàn)this.$store為undefined問題

    這篇文章主要介紹了使用vuex的時(shí)候,出現(xiàn)this.$store為undefined問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue tab切換,解決echartst圖表寬度只有100px的問題

    vue tab切換,解決echartst圖表寬度只有100px的問題

    這篇文章主要介紹了vue tab切換,解決echartst圖表寬度只有100px的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • SyntaxError:?/xx.vue:?Unexpected?token,?expected?“,“錯(cuò)誤解決

    SyntaxError:?/xx.vue:?Unexpected?token,?expected?“,“錯(cuò)誤解

    這篇文章主要為大家介紹了SyntaxError:?/xx.vue:?Unexpected?token,?expected?“,“錯(cuò)誤解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • vue 使用OSS上傳圖片或附件講解

    vue 使用OSS上傳圖片或附件講解

    這篇文章主要介紹了vue 使用OSS上傳圖片或附件講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09

最新評(píng)論