vue.js有无比较快捷的方法可以让当前界面滚动到某一部分。

比如常用的回到顶部,普通html页面可以通过给a标签的href属性设置为某个id,然后点击时就把滚动条滚动到了那一部分(当然,也可以直接设置滚动条距上的高度)。

而我目前有个需求是,在同一个vue组件中,点击不同的按钮,将滚动条滚动到对应的部分(可以不要滚动效果)。直接用上面提到的的话会触发页面跳转,而直接设置滚动条距上高度的话,又得逐个获取位置,没有前者来得简单。

求教大神,这个需求你们有无比较好的实现思路?

阅读 14.6k
9 个回答

那只能用js了,如下面一样,在事件中获取目标元素距离页面顶部的距离,然后控制滚动轴:

$(window).scrollTop( $("#caaa").offset().top )

如果用不了锚点,只能获取每个部分的滚动条位置了。

粗暴的来看,肯定是锚点这个方法暴力咯。

找个原生js插件引入

同问!我也不清楚

新手上路,请多包涵
新手上路,请多包涵

window.scrollTo(0,0)在vue里用,好用,我用了,输入xy坐标就可;
我是这么用的:
window.scrollTo(0,document.getElementById('activityPage').scrollHeight);

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题