AnglarJs中的上拉加载实现代码


Posted in Javascript onFebruary 08, 2018

简介

上拉加载,是目前手机网站加载数据的一种常用方式,本文主要讲解AnglarJs集成,上拉加载功能。通常与下拉刷新配置使用,下拉刷新请查阅。

实现

页面

<div class="search-box">
 <b class="dw" ></b>
  <input type="search" class="search-input" placeholder="请输入搜索关键词" ng-model="catparm">
  <b class="dw" ng-click="serchcat()"><img src="{{basepath}}images/cg-app-search.png"></b>
 </div>
 <div class="list-box" >
  <div infinite-scroll='catinfo.nextPage()' infinite-scroll-disabled='catinfo.busy' infinite-scroll-distance='' id="catinfolist">
  <ul>
   <li ng-repeat='branch in catinfo.items'>
  <!-- <li ng-repeat="branch in branchs">-->
   <a ng-click="showqr(branch.qr)">
   <dl>
   <dt class="search-key-img">
    <img ng-src="{{branch.catimg}}">
   </dt> 
   <dd class="search-key-title">
    <p>{{branch.title}}</p>
    </dd>
    <dd class="search-key-info">
    <span>联系人:{{branch.linkman}} </span><span>品种:{{branch.varieties}} </span> <span style="color: red;">价格:{{branch.price}} </span>
    </dd>
    <dd class="search-key-tag">
    <span>地址:{{branch.region}}</span><span ng-if="branch.wechatno !=''">微信号:{{branch.wechatno}}</span>
    </dd>
    <dd class="search-key-tag">
     <p> 发布时间:{{branch.releasetime}}</p>
    </dd>
   </dl>
   </a>
  </li>
  </ul>
   <div ng-if="catinfo.items.length >= 10 ">
    <div ng-show='catinfo.busy' align="center" style="margin-top:5px; "><!--<img src="{{basepath}}images/729.GIF" style="width:50px;height:50px;">-->loading......</div>
   </div>
   <div ng-if="catinfo.items.length % 10 !=0 ">
    <p class="get-more">我也是有底线的</p>
   </div>
  </div>
  <dialog load-data="data"></dialog>
 </div>

controller中上拉加载功能使用

app.controller('wdListCtrl', ['$scope','catInfoService', function ($scope,catInfoService) {
//下拉加载service
 $scope.catinfo = new catInfoService();

封装上拉加载CatInfoService.js

/** 2017-10-26
 *作者:卜凡起
 *功能:
 */
define(['jquery','app'], function ($,app) {
 app.service('catInfoService', ['$location','$http', function($location,$http) {
  var CatInfo = function () {
   this.items =null;
   this.busy = false;
   this.after = '';
   this.page = 1;
   this.pagenum =10;
   this.title = '';
   this.varieties ='';
  };
  CatInfo.prototype.nextPage = function () {
   if (this.busy) return;
   this.busy = true;
   var url = baseurl+"接口地址?page=" + this.page + "&pagenum="+ this.pagenum + "&title="+this.title+ "&varieties="+this.varieties+"&callback=JSON_CALLBACK";
   $http.jsonp(url).success(function(data) {
    var items =data.data;
    console.log(items);
    if( this.items == null){
     this.items=items;
    }else{
     for (var i =0;i < items.length; i++) {
      this.items.push(items[i]);
     }
    }
    this.after = "t_" + this.items[this.items.length -1 ].id;
    if(items != null){
     if(items.length< 10){
      this.busy = true;
     }else{
      this.busy = false;
     }
    }
    this.page +=1;
   }.bind(this));
  };
  return CatInfo;
 }] );
});

效果

AnglarJs中的上拉加载实现代码

总结

以上所述是小编给大家介绍的AnglarJs中的上拉加载实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JQUERY实现左侧TIPS滑进滑出效果示例
Jun 27 Javascript
jquery阻止冒泡事件使用模拟事件
Sep 06 Javascript
jquery parent和parents的区别分析
Oct 02 Javascript
jquery toolbar与网页浮动工具条具体实现代码
Jan 12 Javascript
JS取得绝对路径的实现代码
Jan 16 Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
Feb 04 Javascript
js中 javascript:void(0) 用法详解
Aug 11 Javascript
javascript表单验证大全
Aug 12 Javascript
解决拦截器对ajax请求的拦截实例详解
Dec 21 Javascript
Angular4 中常用的指令入门总结
Jun 12 Javascript
JS失效 提示HTML1114: (UNICODE 字节顺序标记)的代码页 utf-8 覆盖(META 标记)的冲突的代码页 utf-8
Jun 23 Javascript
微信小程序实现倒计时功能
Nov 19 Javascript
利用vue.js实现被选中状态的改变方法
Feb 08 #Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
Feb 08 #Javascript
vue绑定的点击事件阻止冒泡的实例
Feb 08 #Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
Feb 08 #Javascript
vue中改变选中当前项的显示隐藏或者状态的实现方法
Feb 08 #Javascript
Ionic学习日记实现验证码倒计时
Feb 08 #Javascript
vue父组件点击触发子组件事件的实例讲解
Feb 08 #Javascript
You might like
php把大写命名转换成下划线分割命名
2015/04/27 PHP
php解析mht文件转换成html的实例
2017/03/13 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
2017/10/11 PHP
PHP chunk_split()函数讲解
2019/02/12 PHP
jQuery插件 tabBox实现代码
2010/02/09 Javascript
js判断IE浏览器版本过低示例代码
2013/11/22 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
jquery如何获取复选框的值
2013/12/12 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
2015/09/24 Javascript
JS+CSS实现的漂亮渐变背景特效代码(6个渐变效果)
2016/03/25 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
jquery submit()不能提交表单的解决方法
2017/04/24 jQuery
使用selenium抓取淘宝的商品信息实例
2018/02/06 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
使用apifm-wxapi模块中的问题及解决方法
2019/08/05 Javascript
微信小程序引入VANT组件的方法步骤
2019/09/19 Javascript
uni-app如何实现增量更新功能
2020/01/03 Javascript
Python获取当前路径实现代码
2017/05/08 Python
不管你的Python报什么错,用这个模块就能正常运行
2018/09/14 Python
python实现连连看辅助(图像识别)
2020/03/25 Python
如何使用python操作vmware
2019/07/27 Python
Python 创建守护进程的示例
2020/09/29 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
2020/09/29 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
2020/12/07 Python
MoviePy常用剪辑类及Python视频剪辑自动化
2020/12/18 Python
python压包的概念及实例详解
2021/02/17 Python
全球领先的美容用品专卖店:Beauty Plus Salon
2018/09/04 全球购物
艺术系大学生毕业个人自我评价
2013/09/19 职场文书
超市商业计划书
2014/05/04 职场文书
人事专员岗位说明书
2014/07/29 职场文书
甜品蛋糕店创业计划书
2014/09/21 职场文书
党的群众路线教育实践活动个人对照检查剖析材料
2014/09/23 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2015年绩效考核工作总结
2015/05/23 职场文书
红色革命电影观后感
2015/06/18 职场文书
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL