我想在使用angularjs收到ajax调用响应后滚动到页面顶部。基本上,我在页面顶部显示警报消息,并且我希望将警报消息集中在接收到的ajax响应上。
谢谢
我想在使用angularjs收到ajax调用响应后滚动到页面顶部。基本上,我在页面顶部显示警报消息,并且我希望将警报消息集中在接收到的ajax响应上。
谢谢
Answers:
您可以使用
$window.scrollTo(x, y);
其中x
,横轴是像素,纵轴y
是像素。
滚动到顶部
$window.scrollTo(0, 0);
专注于元素
$window.scrollTo(0, angular.element('put here your element').offsetTop);
更新:
你也可以用 $anchorScroll
您可以使用$anchorScroll
。
只需注入$anchorScroll
为依赖项,然后$anchorScroll()
在您想滚动到顶部时调用。
$anchorScroll
。
理想情况下,我们应根据适用情况从控制器或指令中执行此操作。使用$anchorScroll
,$location
作为依赖项注入。
然后调用这两个方法
$location.hash('scrollToDivID');
$anchorScroll();
这scrollToDivID
是您要滚动的ID。
假设您要导航到错误消息div为
<div id='scrollToDivID'>Your Error Message</div>
有关更多信息,请参阅此文档
别忘了,您还可以使用纯JavaScript来处理这种情况,方法是:
window.scrollTo(x-coord, y-coord);
$window.scrollTo(0, angular.element('put here your element').offset().top);