如何滚动到已加载的ui-view。

13 浏览
0 Comments

如何滚动到已加载的ui-view。

我页面里有一个ui-view。\n当某个按钮被点击时,ui-view会加载并替换为一些HTML内容。\n我希望页面能滚动到刚加载的部分。\n这有可能吗?\n提前感谢!

0
0 Comments

问题出现的原因是在路由改变时页面会自动滚动到顶部。解决方法是在控制器中添加以下代码:

$scope.$on('$routeChangeSuccess', function () {
    window.scrollTo(0, 0);
});

根据需要修改代码中的数值。在我的情况下,我需要使用`$stateChangeSuccess`而不是`$routeChangeSuccess`,但它同样有效。还使用了`$window`服务来检测可测试性。

0
0 Comments

问题的原因是ui-router模块的更新使得默认情况下会滚动到ui-view。解决方法是在

上添加autoscroll="false"属性来阻止滚动。默认设置为true,表示在状态改变时滚动到ui-view。

在链接的Github问题中,它说默认值是autoscroll="expr",但我发现expr没有任何作用,而默认值是autoscroll="true"(这更合理)。

感谢您的写作。这个新的更新让我疯狂,因为所有的页面都突然加载了下来,我也搞不清楚为什么。谢谢!

0