文章详情页
javascript - vue使用keep-alive不能保持滚动位置问题。
浏览:109日期:2022-12-28 10:46:58
问题描述
顶级视图<router-view>设置<keep-alive>虽然能缓存数据还有scrollTop,但是使用上拉加载更多数据后,点击某个item页面后返回,不能准确记录上一页的scrollTop位置,出现的偏差比较大,有时候还会出现返回顶部,有出现过同样的问题小伙伴吗?//自己稍微精准控制一下scrollTop,但是keep-alive还是按照缓存记录scrollTop滚动。$('html,body').animate({scrollTop:this.scrollTopDistance},0);
问题解答
回答1:也遇到了同样的问题,准备用缓存存每个页面上滚动条的位置,再回到页面时再取出来,设置位置。但是感觉这个办法好土呀。还没有找到更好的办法,准备再研究研究。
刚查的这个vue-router有个scrollBehavior函数可以做到,
scrollBehavior: function (to, from, savedPosition) {
return savedPosition || { x: 0, y: 0 }
},准备明天看看
标签:
JavaScript
上一条:javascript - 兼容Android和ios的网页调起原生app问题,使用iframe在ios的Safari无效?下一条:javascript - 在一些视频为主的h5页面中,是怎么做到获取视频缓冲进度或者说如何对video视频做预加载的
相关文章:
1. javascript - 百度echarts series数据更新问题2. MySQL客户端吃掉了SQL注解?3. java - 我设置了cookie的max age,但是cookie依然在关闭游览器后消失了4. css3 - [CSS] 动画效果 3D翻转bug5. javascript - JS设置Video视频对象的currentTime时出现了问题,IE,Edge,火狐,都可以设置,反而chrom却...6. python小白的基础问题 关于while循环的嵌套7. java固定键值转换,使用枚举实现字典?8. php自学从哪里开始?9. phpstady在win10上运行10. 求大神帮我看看是哪里写错了 感谢细心解答
排行榜
