我希望在使用angularjs获取ajax调用响应后滚动到页面顶部。基本上,我在页面顶部显示警报消息,我希望将警报消息作为收到的ajax响应。
由于
答案 0 :(得分:148)
您可以使用
$window.scrollTo(x, y);
其中x
是水平轴上的像素,y
是沿垂直轴的像素。
滚动到顶部
$window.scrollTo(0, 0);
专注于元素
$window.scrollTo(0, angular.element('put here your element').offsetTop);
<强>更新强>:
您也可以使用$anchorScroll
答案 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
属性