vuejs2 - Vue js安装滚动到特定的div

标签 vuejs2

我找到了这个脚本,当你点击按钮时工作正常。我想要实现的是当页面加载它自动滚动到该特定 div。

我怎样才能做到这一点?

<button id="goto" @click="goto('porto')">Go to porto</button>

<div class="page" ref="porto">
    Porto page
</div>

methods: {
    goto(refName) {
        var element = this.$refs[refName];
        console.log(element);
        var top = element.offsetTop;
        window.scrollTo(0, top);
    }
},

最佳答案

已安装 被称为 渲染后 ,但是如果我们尝试在安装时立即滚动,
滚动可能不起作用。

一个简单的设置超时 没有超时就可以解决问题,这可能看起来很难看,但效果很好。

mounted() {
 setTimeout(() => {
  scrollToDiv();
 })
}

关于vuejs2 - Vue js安装滚动到特定的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47616393/

相关文章:

vue.js - VueJs,计算属性和观察者之间的区别?

javascript - 仅在选择范围后才在范围 slider 观察器内执行代码,而不是在滑动 slider 时不断执行?

vue.js - 选择完成后,Vue Multiselect : How to send console. 记录

javascript - 在函数事件(onChange)中调用函数,来自在Leaflet和Vue.js中创建的Select

javascript - 如果值没有改变,vue js禁用输入

javascript - Vuetify 数据表创建自定义过滤器

javascript - 如何在 v-for 中访问对象属性名称

javascript - 如何使用 javascript 变量初始化 vue 属性

vue.js - 在 vuejs 中打开/关闭模式时如何在 body 标签上添加/删除类

javascript - VueJs 有像 React 这样的受控和非受控组件的概念吗?