移动端 记录滚动位置

记录滚动位置

需要: 点击首页列表进入二级页面,返回的时候保持在原位置。

  • 利用: document.documentElement.scrollTop ||window.scrollTop ||document.body.scrollTop;
//首页
mounted(){
this.autoPosition()
},
methods:{
 // 记录当距离顶部的位置
   recodePosition() {
    let scrollTop =document.documentElement.scrollTop ||window.scrollTop ||document.body.scrollTop;
     localStorage.setItem("ScrollTops", scrollTop);
     },
   // 自动定位记录
   autoPosition() {
     const scrollTop =parseFloat(localStorage.getItem("ScrollTops")) || 0;
     this.$nextTick(() => {//是数据加载完成之后滚动
       window.scrollTo(0, scrollTop);
     });
   },
}
//子页面跳转主页面时清空localStorage
< template>
<div @click='goback'> 跳转主页面</div>
</template>
methods:{
goback(){
localStorage.removeItem("ScrollTops");
}
}
上一篇:移动端scrollTop一直为0的解决方案,手机端scrollTop无效的解决办法


下一篇:vue长列表虚拟滚动封装