如何在AngularJS中滚动到页面顶部?

时间:2015-03-05 06:33:11

标签: javascript jquery angularjs

我希望在使用angularjs获取ajax调用响应后滚动到页面顶部。基本上,我在页面顶部显示警报消息,我希望将警报消息作为收到的ajax响应。

由于

5 个答案:

答案 0 :(得分:148)

您可以使用

$window.scrollTo(x, y);

其中x是水平轴上的像素,y是沿垂直轴的像素。

  1. 滚动到顶部

    $window.scrollTo(0, 0);
    
  2. 专注于元素

    $window.scrollTo(0, angular.element('put here your element').offsetTop);   
    
  3. Example

    <强>更新

    您也可以使用$anchorScroll

    Example

答案 1 :(得分:30)

您可以使用$anchorScroll

只需将$anchorScroll作为依赖项注入,只要您想要滚动到顶部,就可以调用$anchorScroll()

答案 2 :(得分:12)

理想情况下,我们应该根据适用情况从控制器或指令执行此操作。 使用$anchorScroll$location作为依赖注入。

然后将这两个方法称为

$location.hash('scrollToDivID');
$anchorScroll();

此处scrollToDivID是您要滚动的ID。

假设您要导航到错误消息div

<div id='scrollToDivID'>Your Error Message</div>

有关详细信息,请参阅此documentation

答案 3 :(得分:3)

不要忘记您也可以使用纯JavaScript来处理这种情况,使用:

window.scrollTo(x-coord, y-coord);

答案 4 :(得分:-5)

使用:$anchorScroll();

$anchorScroll属性