zoukankan      html  css  js  c++  java
  • vue中的回到顶部

    <template>
      <div class="main">
        <div class="content">灰色部分是内容部分</div>
        <div class="red">红色部分是内容部分</div>
        <div class="scollTop" id="imgscoll" v-show="isShowimg === true">
          <img src="@/assets/dingbu@3x.png" alt @click="goTop">
        </div>
      </div>
    </template>
    <script>
    export default {
      data(){
        return{
          isShowimg: false,
        }
      },
      mounted(){
        window.addEventListener('scroll', this.handleScroll)
      },
      destroyed() {
        document.removeEventListener('scroll', this.handleScroll)
        document.body.scrollTop = document.documentElement.scrollTop = 0
      },
      methods:{
        goTop() {
            // 回到顶部
          document.body.scrollTop = document.documentElement.scrollTop = 0
          this.isShowimg = false
        },
        handleScroll(e) {
          // 滚动操作监听
          let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
          // console.log(scrollTop)
          let offsetTop = 0
          try {
            offsetTop = document.querySelector('.main').offsetTop
          } catch (e) {
            offsetTop = 0
          }
          if (scrollTop > offsetTop) {
            // this.searchBarFixed = true
            // this.scrollStatus = {
            //   display: 'block',
            //   background: '#fff',
            //   h: this.statusBarHeight.h
            // }
            if (scrollTop > 500) {
              this.isShowimg = true
            } else {
              this.isShowimg = false
            }
          } else {
            // this.searchBarFixed = false
            this.isShowimg = false
            // this.scrollStatus = {
            //   display: 'none',
            //   background: 'transparent',
            //   h: 0
            // }
          }
        }
      }
    }
    </script>
    <style>
    *{
      margin:0;padding:0;
    }
    .main{
       100%;
    }
    .content{
       100%;
      height:60rem;
      background: #eee;
    }
    .red{
      height:30rem;
      background: #f00;
    }
     .scollTop {
        position: fixed;
        bottom: 15rem;
        right: 3rem;
    }
    .scollTop img{
       5rem;
      height: 5rem; 
    }
    </style>

    注意图片需要自行进行引入

  • 相关阅读:
    linux查看存储盘
    aix中hd5对应什么设备?
    (转)Python 操作 Windows 粘贴板
    eclipse非主窗口的停靠(正常), 恢复, 最小化, 最大化的切换
    (转)HTML5 本地数据库(SQLite) 示例
    [译] 如何像 Python 高手一样编程?
    scrapy递归下载网站
    eclipse快捷键以及使用技巧大全
    python任意编码转utf8或者unicode
    apache快速配置简易网站
  • 原文地址:https://www.cnblogs.com/toughy/p/11806374.html
Copyright © 2011-2022 走看看