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 相关文章推荐
javaScript 判断字符串是否为数字的简单方法
Jul 25 Javascript
对xmlHttp对象的理解
Jan 17 Javascript
jQuery+PHP打造滑动开关效果
Dec 16 Javascript
JavaScript中for循环的使用详解
Jun 03 Javascript
jQuery动态背景图片效果实现方法
Jul 03 Javascript
js操作XML文件的实现方法兼容IE与FireFox
Jun 25 Javascript
Bootstrap字体图标无法正常显示的解决方法
Oct 08 Javascript
浅谈html转义及防止javascript注入攻击的方法
Dec 04 Javascript
前端js弹出框组件使用方法
Aug 24 Javascript
bootstrap jquery dataTable 异步ajax刷新表格数据的实现方法
Feb 10 Javascript
react-native ListView下拉刷新上拉加载实现代码
Aug 03 Javascript
详解关于JSON.parse()和JSON.stringify()的性能小测试
Mar 14 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
使用Apache的rewrite技术
2006/06/22 PHP
php中判断一个字符串包含另一个字符串的方法
2007/03/19 PHP
使用Git实现Laravel项目的自动化部署
2019/11/24 PHP
Sample script that deletes a SQL Server database
2007/06/16 Javascript
JavaScript 应用类库代码
2008/06/02 Javascript
animate动画示例(泪奔的小孩)及stop和delay的使用
2013/05/06 Javascript
JS获取键盘上任意按键的值(实例代码)
2013/11/12 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
javascript实现根据3原色制作颜色选择器的方法
2015/07/17 Javascript
Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
2016/03/23 Javascript
js控住DOM实现发布微博效果
2016/08/30 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
2016/10/27 Javascript
Bootstrap Img 图片样式(推荐)
2016/12/13 Javascript
详细介绍RxJS在Angular中的应用
2017/09/23 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
vue-router中的hash和history两种模式的区别
2018/07/17 Javascript
详解Vue项目在其他电脑npm run dev运行报错的解决方法
2018/10/29 Javascript
JavaScript实现学生在线做题计时器功能
2018/12/05 Javascript
浅谈vue.use()方法从源码到使用
2019/05/12 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
Python 实现淘宝秒杀的示例代码
2018/01/02 Python
Python格式化输出%s和%d
2018/05/07 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
python调用pyaudio使用麦克风录制wav声音文件的教程
2019/06/26 Python
python sleep和wait对比总结
2021/02/03 Python
使用 CSS3 中@media 实现网页自适应的示例代码
2020/03/24 HTML / CSS
Web时代变迁及html5与html4的区别
2016/01/06 HTML / CSS
html5 video全屏播放/自动播放的实现示例
2020/08/06 HTML / CSS
SQL SERVER面试资料
2013/03/30 面试题
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
小学生学习雷锋倡议书
2014/05/15 职场文书
开工典礼策划方案
2014/05/23 职场文书
后勤工作个人总结
2015/02/28 职场文书
女方家长婚礼致辞
2015/07/27 职场文书
交互式可视化js库gojs使用介绍及技巧
2022/02/18 Javascript