Angularjs 滚动加载更多数据


Posted in Javascript onMarch 17, 2016

下面的例子只是为了简单记录怎么使用angularjs来实现滚动加载数据,具体的还是需要具体看待:

Javascript部分的controller

app.controller('AnalysizerCtrl', ['$scope', '$timeout', '$window',
function ($scope, $timeout, $window) {
$scope.showData = false;
$scope.isLoadingPIG = false;
$scope.isLoadingUJ = false;
$scope.isLoadingBoxSummary = false;
$scope.LoadingData = function (index) {
$scope.showData = true;
var pigHeight = $(".analysisContainer")[1].children[1].scrollHeight;
var ujHeight = $(".analysisContainer")[1].children[2].scrollHeight;
var boxSummaryHeight = $(".analysisContainer")[1].children[3].scrollHeight;
if (index == 0) {
//$scope.reLoadData = true;
pigHeight = 0;
ujHeight = 0;
$scope.gridOptions.data = null;
}
var showSummaryBox = function () {
$scope.isLoadingBoxSummary = false;
}
var showUj = function () {
$scope.isLoadingUJ = false;
//$scope.isLoadingSummaryBox = true;
//$timeout(showSummaryBox, 1000);
}
var showPig = function () {
$scope.isLoadingPIG = false;
//$scope.isLoadingUJ = false;
//$timeout(showUj, 10000);
}
if (pigHeight == 0) {
$scope.isLoadingPIG = true;
$timeout(showPig, 1000);
} else if (ujHeight == 0) {
$scope.isLoadingUJ = true;
$timeout(showUj, 1000);
} else if (boxSummaryHeight == 0) {
$scope.isLoadingBoxSummary = true;
$timeout(showSummaryBox, 1000);
}
};
}]
).directive('whenScrollEnd', function () {
return function (scope, elm, attr) {
var pageWindow = $(this);
pageWindow.bind('scroll', function (et, ed, pb) {
var winScrollTop = pageWindow.scrollTop();
var winHeight = pageWindow.height();
var maxScrollHeight = $(".analysisContainer")[1].scrollHeight;
if ((winScrollTop + winHeight) > maxScrollHeight) {
scope.$apply(attr.whenScrollEnd);
}
});
}
});

下面是HTML部分:

<div class="analysisContainer" ng-show="showData" when-scroll-end="LoadingData()">
<div id="b" ng-show="isLoadingPIG" style="width: 100%; text-align: center; z-index: 1">
<h6 class="loading">
<img src="~/Content/Images/loading2.gif" />
Loading Win & Convert data...
</h6>
</div>
<div id="a" ng-show="!isLoadingPIG">
<img src="~/2016-03-16_152323.png" />
</div>
<div ng-show="!isLoadingUJ">
<img src="~/2016-03-16_153347.png" />
</div>
<div ng-show="!isLoadingBoxSummary">
<img src="~/2016-03-16_153404.png" />
</div>
</div>

重要的部分是指令(directive)和滚动时要加载数据的部分。

Angularjs 滚动加载更多数据的相关知识,小编就给大家介绍这么多,希望对大家有所帮助!

Javascript 相关文章推荐
js判断IE6/IE7/FF的代码[XMLHttpRequest]
Feb 16 Javascript
jQuery中的.bind()、.live()和.delegate()之间区别分析
Jun 08 Javascript
Chosen 基于jquery的选择框插件使用方法
May 30 Javascript
不提示直接关闭网页窗口的JS示例代码
Dec 17 Javascript
JS实现点击链接取消跳转效果的方法
Jan 24 Javascript
jQuery 浮动导航菜单适合购物商品类型的网站
Sep 09 Javascript
javascript事件委托的方式绑定详解
Jun 10 Javascript
AngualrJS中的Directive制作一个菜单
Jan 26 Javascript
基于jQuery实现弹幕APP
Feb 10 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
Aug 17 Javascript
js实现带积分弹球小游戏
Jul 21 Javascript
vue使用swiper实现左右滑动切换图片
Oct 16 Javascript
基于jquery实现智能提示控件intellSeach.js
Mar 17 #Javascript
JavaScript函数内部属性和函数方法实例详解
Mar 17 #Javascript
基于jquery实现简单的分页控件
Mar 17 #Javascript
jQuery实现图片局部放大镜效果
Mar 17 #Javascript
jQuery实现放大镜效果实例代码
Mar 17 #Javascript
node.js使用cluster实现多进程
Mar 17 #Javascript
使用pcs api往免费的百度网盘上传下载文件的方法
Mar 17 #Javascript
You might like
收音机指标测试方法及仪器
2021/03/01 无线电
咖啡因含量是由谁决定的?低因咖啡怎么来?低因咖啡适合什么人喝
2021/03/06 新手入门
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
Windows7下的php环境配置教程
2015/02/28 PHP
PHP的Socket通信之UDP通信实例
2015/07/02 PHP
神奇的代码 通杀各种网站-可随意修改复制页面内容
2008/07/17 Javascript
JavaScript isPrototypeOf和hasOwnProperty使用区别
2010/03/04 Javascript
js中生成map对象的方法
2014/01/09 Javascript
JS数组的遍历方式for循环与for...in
2014/07/31 Javascript
javascript排序函数实现数字排序
2015/06/26 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
2016/06/22 Javascript
如何使用vuejs实现更好的Form validation?
2017/04/07 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
2017/04/25 Javascript
jQuery Easyui Treegrid实现显示checkbox功能
2017/08/08 jQuery
旺旺在线客服代码 旺旺客服代码生成器
2018/01/09 Javascript
python3访问sina首页中文的处理方法
2014/02/24 Python
跟老齐学Python之有容乃大的list(2)
2014/09/15 Python
详解python单元测试框架unittest
2018/07/02 Python
python实现简单银行管理系统
2019/10/25 Python
使用Python刷淘宝喵币(低阶入门版)
2019/10/30 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
英国品牌男装折扣网站:Brown Bag
2018/03/08 全球购物
伊莱克斯(Electrolux)俄罗斯网上商店:瑞典家用电器品牌
2021/01/23 全球购物
C#如何进行LDAP用户校验
2012/11/21 面试题
extern是什么意思
2016/03/10 面试题
2014年五一促销活动方案
2014/03/09 职场文书
红领巾心向党演讲稿
2014/09/10 职场文书
工作失职检讨书(精华篇)
2014/10/15 职场文书
一年级小学生评语大全
2014/12/25 职场文书
2015年底工作总结范文
2015/05/15 职场文书
2015年主婚人婚礼致辞
2015/07/28 职场文书
社区宣传标语口号
2015/12/26 职场文书
使用Python+OpenCV进行卡类型及16位卡号数字的OCR功能
2021/08/30 Python
js不常见操作运算符总结
2021/11/20 Javascript