当前位置: 首页 > article >正文

页面滚动到指定位置——记录div滚动高度,并下次自动滚动到该位置

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

 <div 
    style="width: 220px; height: calc(100vh - 1.6rem)"
    class="scroll hide-scroll"
    ref="menu"
  >
    <div 
      v-for="(item, i) in 100"
      :key="i"
    >
      <div>{{ item}}</div>
    </div>
  </div>
  
  
  /* ****滚动条样式,添加改类名 scroll */
.scroll {
  overflow-y: auto;
}

.scroll::-webkit-scrollbar {
  width: 8px;
}

.hide-scroll::-webkit-scrollbar {
  width: 0px;
}

.scroll::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 5px;
}

.scroll::-webkit-scrollbar-thumb:hover {
  background: #d7f8f5;
}
mounted() {
    console.log(localStorage.getItem("menu"));

    // 获取上次滚动高度,自动滚动到顶部
    // ☆☆☆☆☆ 必须加 $nextTick 滚动才起作用
    this.$nextTick(() => {
      if (localStorage.getItem("menu")) {
        this.$refs.menu.scrollTo({
          top: localStorage.getItem("menu") * 1,
          // behavior: "smooth",
        });
      }
    });

    this.$refs.menu.addEventListener("scroll", this.handleScroll);
  },
  methods: { 
    handleScroll() {
      var scrollTop = this.$refs.menu.scrollTop;
      localStorage.setItem("menu", scrollTop);
    },
  },

http://www.kler.cn/a/287526.html

相关文章:

  • 如何在MindMaster思维导图中制作PPT课件?
  • 多模态基础模型:从专家到通用助手
  • Spring Events在大型项目中的最佳实践
  • Go语言24小时极速学习教程(二)复合数据(集合)操作
  • 十:详解HTTP的请求行
  • gitlab和jenkins连接
  • Java设计模式之单例模式详细讲解和案例示范
  • 华为云征文|Flexus X实例性能测评
  • 分贝通助力元气森林企业支出一体化降本提效
  • mysql 死锁 锁表的解决方法
  • Oracle高级sql语法学习之hits
  • vue按钮弹框
  • Leetcode Hot 100刷题记录 -Day3(双指针)
  • 【HTML】使用过程中的随记
  • C++入门8——vector的使用
  • 谷歌浏览器与edge哪个好用
  • 半导体芯闻--20240902
  • 百度广告联盟:抢占流量蓝海,精准营销新引擎
  • C#/.net core “hello”.IndexOf(“\0”,2)中的坑
  • 【香橙派系列教程】(十五) VSCode SSH远程连接开发板,以香橙派为例
  • uniapp壁纸项目笔记
  • vue后台项目打包成桌面应用程序(.exe)
  • 科大讯飞--C++开发--面经
  • 房产报备小程序房产报备系统源码搭建方案
  • 深入理解红黑树:在C++中实现插入、删除和查找操作
  • C++学习, 存储类