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 相关文章推荐
cssQuery()的下载与使用方法
Jan 12 Javascript
Javascript中定义方法的另类写法(批量定义js对象的方法)
Feb 25 Javascript
js 获取radio按钮值的实例
Aug 17 Javascript
Jquery easyui开启行编辑模式增删改操作
Jan 14 Javascript
javascript学习指南之回调问题
Apr 23 Javascript
微信小程序 网络API 上传、下载详解
Nov 09 Javascript
node.js多个异步过程中判断执行是否完成的解决方案
Dec 10 Javascript
关于axios不能使用Vue.use()浅析
Jan 12 Javascript
JS对日期操作封装代码实例
Nov 08 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
Sep 11 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
Nov 05 Javascript
JavaScript的一些小技巧分享
Jan 06 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 adodb连接不同数据库
2009/03/19 PHP
php根据操作系统转换文件名大小写的方法
2014/02/24 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
图片自动缩小的js代码,用以防止图片撑破页面
2007/03/12 Javascript
jquery 指南/入门基础
2007/11/30 Javascript
JavaScript 自动完成脚本整理(33个)
2009/10/20 Javascript
qTip 基于JQuery的Tooltip插件[兼容性好]
2010/09/01 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
浅谈如何实现easyui的datebox格式化
2016/06/12 Javascript
用jQuery实现可输入多选下拉组合框实例代码
2017/01/18 Javascript
滚动条的监听与内容随着滚动条动态加载的实现
2017/02/08 Javascript
angularJs使用$watch和$filter过滤器制作搜索筛选实例
2017/06/01 Javascript
微信小程序实现简单评论功能
2018/11/28 Javascript
vue前后分离调起微信支付
2019/07/29 Javascript
原生js实现日期选择插件
2020/05/21 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
Django集成百度富文本编辑器uEditor攻略
2014/07/04 Python
Python pickle模块用法实例分析
2015/05/27 Python
尝试使用Python多线程抓取代理服务器IP地址的示例
2015/11/09 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
2019/01/07 Python
python生成带有表格的图片实例
2019/02/03 Python
python3使用腾讯企业邮箱发送邮件的实例
2019/06/28 Python
Python importlib动态导入模块实现代码
2020/04/16 Python
Python制作简单的剪刀石头布游戏
2020/12/10 Python
python 使用openpyxl读取excel数据
2021/02/18 Python
html5 localStorage本地存储_动力节点Java学院整理
2017/07/06 HTML / CSS
银行实习人员自我鉴定
2013/09/22 职场文书
数控加工专业毕业生自荐信
2013/09/27 职场文书
优秀员工自荐信范文
2013/10/05 职场文书
如何写好升职自荐信
2014/01/06 职场文书
幼儿园教师考核评语
2014/12/31 职场文书
2015年爱国卫生月活动总结
2015/03/26 职场文书
民事辩护词范文
2015/05/21 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
SQL Server代理:理解SQL代理错误日志处理方法
2021/06/30 SQL Server