1

从 Angular 1.x 开始,有什么方法可以在 ionic 2/Angular2 中执行 $anchorScroll 吗?

试图滚动到页面上的元素。我尝试了类似 ng2-page-scroll https://github.com/Nolanus/ng2-page-scroll

不确定我是否做得对,我按照教程进行操作并得到错误:

ParseError: 'import' and 'export' may appear only with 'sourceType: module'

我认为这不再适用于最新的 ionic 2 版本。只希望有一种更简单的方法,有什么解决方法吗?

4

2 回答 2

4

我不知道您是否仍然面临这个问题,但这可以使用 来解决YourHTMLelement.getBoundingClientRect(),它返回该元素的边界为上、右、下和左。

这样,您就可以使用内容scrollTo(left, top, duration)功能。我创建了一个垂直滚动到特定元素的函数,如下所示:

scrollToElement(id) { 
    var el = document.getElementById(id);
    var rect = el.getBoundingClientRect();
    // scrollLeft as 0px, scrollTop as "topBound"px, move in 800 milliseconds
    this.content.scrollTo(0, rect.top, 800);
}

但是您可以使用 scrollLeft 参数以您希望水平滚动的方式更改它。

于 2016-10-03T03:01:16.030 回答
0

我处于同样的情况,我想为每次单击按钮滚动到下一页/元素。

我查看了您提到的相同选项,发现在 ion-slides ( http://ionicframework.com/docs/v2/api/components/slides/Slides/ ) 中,您可以将方向设置为“垂直”,这对我有用。

不知道它是否可以帮助您的用例。

否则,您可以查看 Content 和 scrollTo 函数。 http://ionicframework.com/docs/v2/api/components/content/Content/

于 2016-08-11T11:05:57.600 回答