javascript - vue.js有无比较快捷的方法可以让当前界面滚动到某一部分。
为情所困
为情所困 2017-05-18 10:45:35
0
8
607

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

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

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

为情所困
为情所困

全部回复(8)
phpcn_u1582

Element.scrollIntoView()

这是 JS 的一个原生 api,调用后,浏览器会滚动至目标元素的位置。

https://developer.mozilla.org...

洪涛

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

曾经蜡笔没有小新

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

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

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

曾经蜡笔没有小新

找个原生js插件引入

阿神

同问!我也不清楚

给我你的怀抱

https://huahua0406.github.io/...

下面有个左右对应滚动的不知道满足你的要求吗

大家讲道理

vue-router2

router有模拟锚点的功能

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板