ng-easy-infinite-scroll
Version:
infinite scroll
61 lines (49 loc) • 1.77 kB
HTML
<html ng-app="app">
<head>
<meta charset="utf-8">
<title>ng-easy-infinite-scroll</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body ng-controller="ctrl">
<style media="screen">
.example{
max-height: 400px;
overflow: auto;
}
</style>
<div class="container"> <br>
<div class="row example" infinite-scroll="loadMore()" infinite-disabled="isDisabled">
<div class="col-md-3" ng-repeat="i in array track by $index">
{{i}}
</div>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.min.js"></script>
<script type="text/javascript" src="dist/ng-easy-infinite-scroll.min.js"></script>
<script type="text/javascript">
angular.module('app', ['ngEasyInfiniteScroll']).controller('ctrl', function($scope, $timeout){
$scope.array = [];
function add(i){
$timeout(function(){
$scope.array.push(i);
});
}
for(var i=0; i < 100; i++){
add(i);
}
$scope.loadMore = function(){
if($scope.array.length > 150){
$scope.isDisabled = true;
}
$timeout(function(){
for(var i = $scope.array.length; i < $scope.array.length + 10; i++){
add(i);
}
});
}
})
</script>
</body>
</html>