AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法


Posted in Javascript onDecember 14, 2016

本文实例讲述了AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法。分享给大家供大家参考,具体如下:

1.分页加载数据的基础上,如何通过滚动加载,实现分页加载数据的效果,github上,针对AngularJS,有一款不错的插件,地址为:https://github.com/sroze/ngInfiniteScroll

2.下面来看官方给出的文档

(1)使用样例:

<ANY infinite-scroll='{expression}'
   [infinite-scroll-distance='{number}']
   [infinite-scroll-disabled='{boolean}']
   [infinite-scroll-immediate-check='{boolean}']
   [infinite-scroll-listen-for-event='{string}']>
</ANY>

解释各个属性(指令的含义)

①infinite-scroll - {expression} 当滚动到浏览器底部时,所执行的函数或者表达式,通常是函数形式。

②infinite-scroll-distance (optional) - {number} 表达式或者数字,如果是一个数字,表示滚动条距离浏览器底部多少远时,执行①中里面的函数。如果将这个值设置为2,对于1000px高度的元素,当元素底部距离浏览器窗口底部距离在2000px像素以内,没滚动一次,都会执行一次①里面的函数。(这个值默认是0,即当元素滚动到元素底部达到浏览器窗口(滚动区域)底部时,执行滚动区域里面的函数。

③infinite-scroll-disabled (optional) - {boolean} 一个布尔值,用于标志滚动表达函数能否执行,如果值为true,表示滚动函数不能被执行。这个属性,通常用于暂停或者停止滚动。比如当我们在AJAX请求数据的过程中,移动了滚动条,这时就需要设置这个属性,禁止滚动函数的执行。

④infinite-scroll-immediate-check (optional) - {boolean} 一个布尔值,用于标志指令在初始化页面时,是否为初始执行一次(即使这种情况下,没有初始滚动),默认值为true,表示初始会执行一次这①里面的函数。

⑤infinite-scroll-listen-for-event (optional) - {string} 一个事件,当接受到这个事件时候,会重新执行滚动函数,重新定位滚动位置,比如到元素被修改时,会重新执行滚动函数。

(2)本地的DEMO

官网给出了本地运行,实现滚动加载的例子:

HTML代码:

<div ng-app='myApp' ng-controller='DemoController'>
 <div infinite-scroll='loadMore()' infinite-scroll-distance='2'>
  <img ng-repeat='image in images' ng-src='http://placehold.it/225x250&text={{image}}'>
 </div>
</div>

JS代码:

var myApp = angular.module('myApp', ['infinite-scroll']);
myApp.controller('DemoController', function($scope) {
 $scope.images = [1, 2, 3, 4, 5, 6, 7, 8];
 $scope.loadMore = function() {
  var last = $scope.images[$scope.images.length - 1];
  for(var i = 1; i <= 8; i++) {
   $scope.images.push(last + i);
  }
 };
});

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
JavaScript转换农历类实现及调用方法
Jan 27 Javascript
jQuery向后台传入json格式数据的方法
Feb 13 Javascript
JavaScript实现Flash炫光波动特效
May 14 Javascript
coffeescript使用的方式汇总
Aug 05 Javascript
javascript中类的定义方式详解(四种方式)
Dec 22 Javascript
jquery+css3实现会动的小圆圈效果
Jan 27 Javascript
jQuery实现点击后高亮背景固定显示的菜单效果【附demo源码下载】
Sep 21 Javascript
vue实现长图垂直居上 vue实现短图垂直居中
Oct 18 Javascript
基于vue-router 多级路由redirect 重定向的问题
Sep 03 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
May 21 Javascript
Vue Router中应用中间件的方法
Aug 06 Javascript
vue 防止页面加载时看到花括号的解决操作
Nov 09 Javascript
bootstrap modal弹出框的垂直居中
Dec 14 #Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
Dec 14 #Javascript
微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
Dec 14 #Javascript
bootstrap模态框实现拖拽效果
Dec 14 #Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
Dec 14 #Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
Dec 14 #Javascript
Bootstrap实现圆角、圆形头像和响应式图片
Dec 14 #Javascript
You might like
php 购物车的例子
2009/05/04 PHP
php URL跳转代码 减少外链
2011/06/25 PHP
PHP+jQuery+Ajax实现用户登录与退出
2015/04/27 PHP
另类调用flash无须激活的方法
2006/12/27 Javascript
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
html向js方法传递参数具体实现
2013/08/08 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
2014/04/23 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
谈谈JavaScript类型系统之Math
2016/01/06 Javascript
JS作用域深度解析
2016/12/29 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
vue2.0 自定义日期时间过滤器
2017/06/07 Javascript
微信小程序实现页面跳转传值以及获取值的方法分析
2017/12/18 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
微信小程序如何通过用户授权获取手机号(getPhoneNumber)
2020/01/21 Javascript
原生JavaScript实现弹幕组件的示例代码
2020/10/12 Javascript
vue video和vue-video-player实现视频铺满教程
2020/10/30 Javascript
使用Python编写一个简单的tic-tac-toe游戏的教程
2015/04/16 Python
HTML中使用python屏蔽一些基本功能的方法
2017/07/07 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
2017/12/19 Python
python实现给scatter设置颜色渐变条colorbar的方法
2018/12/13 Python
对python实现二维函数高次拟合的示例详解
2018/12/29 Python
Python判断telnet通不通的实例
2019/01/26 Python
Django 中间键和上下文处理器的使用
2019/03/17 Python
python快速排序的实现及运行时间比较
2019/11/22 Python
python列表推导式操作解析
2019/11/26 Python
如何利用pycharm进行代码更新比较
2020/11/04 Python
在线服装零售商:SheIn
2016/07/22 全球购物
Java程序员常见面试题
2015/07/16 面试题
优秀员工自荐书范文
2013/12/08 职场文书
书香校园活动方案
2014/02/28 职场文书
升国旗仪式主持词
2014/03/19 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
夫妻忠诚协议范文
2014/11/16 职场文书
2015年妇女工作总结
2015/05/14 职场文书
60条职场经典语录,总有一条能触动你的心
2019/08/21 职场文书