我知道如何在纯JS中滚动时检测文档结束,我的问题是 - 如何在AngularJS中实现该功能,我知道我应该将滚动事件附加到两个$window和$document,我的问题是关于在哪里实施行为?,指令?,服务?,如果任何人都可以告诉我什么是正确的方式来实现在AngularJS kind of detection我会非常感谢。在Angular JS中检测滚动到文档结束的实现
回答
根据你在做什么,它可以在地方的组合。通常,使用DOM操作打交道时(这是我认为会发生),你应该用一个指令 - 是这样的:
app.directive("scrollDetector", ["$document", "$window", function($document, $window) {
return {
restrict: "A",
link: function(scope, elem, attrs) {
angular.element($window).bind("scroll", function() {
//scroll logic here
});
}
}
}]);
,然后实现scroll-detector
指令。 (例如:<div scroll-detector></div>
)
谢谢,现在我知道如何。 – 2014-10-07 18:20:37
经过长时间的苦苦挣扎后,偶然发现图书馆:http://binarymuse.github.io/ngInfiniteScroll/documentation.html。
根据您的使用情况,你可以这样做:
<div infinite-scroll="addMoreItems()">
<div ng-repeat="item in items">Item number {{$index}}: {{$item}}</div>
</div>
因为它可以让你这个连接到任何div-你几乎可以做你想要的任何功能。
谢谢,我会看看。 – 2015-09-29 08:02:19
更新后的链接:http://sroze.github.io/ngInfiniteScroll/documentation.html – yarl 2016-10-22 00:47:12
- 1. 在滚动检测一个PinchGesture结束
- 2. 检测滚动结束在Xamarin.Forms.Scrollview
- 3. 检测程序化UIScrollView滚动结束
- 4. jquery滑块检测滚动结束?
- 5. Android:如何检测滚动结束
- 6. 在React Native ScrollView中检测滚动结束,管理页面
- 7. Ember JS中的滚动检测?
- 8. 无法检测到动画结束
- 9. ESPER中的文件检测结束
- 10. 如何通过JavaScript检测指定元素的滚动结束?
- 11. Android ScrollView:如何检测滚动视图的开始和结束
- 12. 如何检测自定义滚动视图的结束?
- 13. 在WP7中使用Silverlight中的ScrollViewer控件检测滚动结束
- 14. WPF ListBox滚动到自动结束
- 15. 如何检测ResponsiveVoice JS中的结束语
- 16. 移动开始/结束点检测
- 17. 检测哪个事件结束活动
- 18. jQuery检测如果CSS动画结束
- 19. 在Firefox中检测滚动到底部2滚动
- 20. 如何在我的vue中实现无限滚动js
- 21. 如何实现oncompletionlistener检测Exoplayer中媒体文件的结尾
- 22. ScaleGestureDetector未检测到手势结束
- 23. 滚动wpf文本块结束
- 24. 当HTML5视频结束时检测到
- 25. 在批次结束时检测到不可提交的事务。交易回滚
- 26. 如何停止JS驱动的整页滚动从跳转到开始/结束
- 27. 滚动文档
- 28. 在popen.stdout.readline上检测流的结束
- 29. 上传结束时检测
- 30. Swift:检测视频结束
你应该去看看这个模块的源代码。 http://binarymuse.github.io/ngInfiniteScroll/。它在滚动检测方面做了很多工作。 – 2014-10-07 18:07:37
@GordonBockus感谢您的链接。 – 2014-10-07 18:19:54