vue uniapp H5 页面跳转滚动到指定位置

765 阅读1分钟

需实现功能:A页面下滑到中间,有个新增按钮可以跳转到B页面,B返回A页面,想回到A页面之前所在的地方。

页面:要滚到我这里

代码:document.getElementById('scrollDiv').scrollIntoView();

主体代码就是上面一行,只是试了很久包括网上的办法都无效,最终解决方法如下,有效。

要点 缺一不可:

  1. 写在mouted里面

  2. 写在this.$nextTick里面

  3. 写在setTimeout里面

  4. setTimeout的时间千万别调成0或者太少,因为测试发现,如果我是300,根本不会滚动,我感觉是页面比较长,都来不及滚动下去。滚动的越下面,需要的时间越长。

    mounted() { this.$nextTick(()=>{ setTimeout(() => { document.getElementById('scrollDiv').scrollIntoView(); }, 600) }) },