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性能陷阱小结(附实例说明)
Dec 28 Javascript
jQuery最佳实践完整篇
Aug 20 Javascript
jquery将一个表单序列化为一个对象的方法
Dec 02 Javascript
JavaScript中的substr()方法使用详解
Jun 06 Javascript
详解Jquery实现ready和bind事件
Apr 14 Javascript
js点击按钮实现水波纹效果代码(CSS3和Canves)
Sep 15 Javascript
js实现省市级联效果分享
Aug 10 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
Mar 02 Javascript
GOJS+VUE实现流程图效果
Dec 01 Javascript
electron-vue利用webpack打包实现多页面的入口文件问题
May 12 Javascript
Vue 实现html中根据类型显示内容
Oct 28 Javascript
vue 获取url参数、get参数返回数组的操作
Nov 12 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
PHP生成随机数的方法实例分析
2015/01/22 PHP
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
2009/04/24 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
jquery简单实现网页层的展开与收缩效果
2015/08/07 Javascript
Jquery操作Ajax方法小结
2015/11/29 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
CascadeView级联组件实现思路详解(分离思想和单链表)
2016/04/12 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
完全深入学习Bootstrap表单
2016/11/28 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
2016/12/19 Javascript
修改 bootstrap table 默认detailRow样式的实例代码
2017/07/21 Javascript
JS实现合并json对象的方法
2017/10/10 Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
2017/12/27 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
2019/04/07 Javascript
微信小程序按钮点击动画效果的实现
2019/09/04 Javascript
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
总结python爬虫抓站的实用技巧
2016/08/09 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
Python构建网页爬虫原理分析
2017/12/19 Python
Python实现感知机(PLA)算法
2017/12/20 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
2020/02/26 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
CSS3实现千变万化的文字阴影text-shadow效果设计
2016/04/26 HTML / CSS
纯CSS3实现的井字棋游戏
2020/11/25 HTML / CSS
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
什么是serialVersionUID
2016/03/04 面试题
宿舍使用违章电器检讨书
2014/01/12 职场文书
酒店经理职责
2014/01/30 职场文书
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
财务务虚会发言材料
2014/10/20 职场文书
情人节活动总结范文
2015/02/05 职场文书
一篇文章看懂MySQL主从复制与读写分离
2021/11/07 MySQL
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python