jQuery+AJAX实现无刷新下拉加载更多


Posted in Javascript onJuly 03, 2015

随着互联网时代的发展,web前端已经和后台数据挂钩,作为web前端仅仅不是只切图写写html,css  和简单js交互。

js  code

$(function() {
  var page = 1;
  var discount = $('#discount');
  var innerHeight = window.innerHeight;
  var timer2 = null;
  $.ajax({
    url: '/lightapp/marketing/verify/apply/list?page=1',
    type: 'GET',
    dataType: 'json',
    timeout: '1000',
    cache: 'false',
    success: function (data) {
        if (data.error_code === 0) {
          var arrText = [];
          for (var i = 0, t; t = data.list[i++];) {
            arrText.push('<div class="consume-whole">');
            arrText.push('<h3>' + t.title + '</h3>');
            if (t.coupon_type == 1 ) {
              arrText.push('<p>金额:¥' + t.amount + '</p>');
            } else {
              arrText.push('<p>优惠:' + t.amount + '</p>');
            }
            arrText.push('<p><span class="hx-user">用户:s账户飒飒是是是啊啊12' + t.user_name +'</span>' + '<span>核销时间:' + t.use_time + '</span></p>');
            arrText.push('</div>');
          }
          discount.html(arrText.join(''));
        };
        var ajax_getting = false; 
        $(window).scroll(function() {
          clearTimeout(timer2);
          timer2 = setTimeout(function() {
            var scrollTop = $(document.body).scrollTop();
            var scrollHeight = $('body').height();

            var windowHeight = innerHeight;
            var scrollWhole = Math.max(scrollHeight - scrollTop - windowHeight);
            if (scrollWhole < 100) {
              if (ajax_getting) {
                return false;
              } else {
                ajax_getting = true;
              }
              discount.append('<div class="load"><img src="/lightapp/static/zhida-yunying/img/load.gif" width="6%" /></div>');
              $('html,body').scrollTop($(window).height() + $(document).height());
              page++;
              $.ajax({
                url: '/lightapp/marketing/verify/apply/list?page=' + page,
                type: 'GET',
                dataType: 'json',
                success: function (data) {
                  if (data.error_code === 0) {
                    var arrText = [];
                    for (var i = 0, t; t = data.list[i++];) {
                      arrText.push('<div class="consume-whole"><a href="/lightapp/marketing/verify/page/info?rule_id=' + t.rule_id + '&coupon_id='+ t.coupon_id +'">');
                      arrText.push('<h3>' + t.title + '</h3>');
                      if (t.coupon_type == 1 ) {
                         arrText.push('<p>金额:¥' + t.amount + '</p>');
                      } else {
                        arrText.push('<p>优惠:' + t.amount + '</p>');
                      };
                      arrText.push('<p><span class="hx-user">用户:账户飒111111111' + t.user_name +'</span>' + '<span>核销时间:' + t.use_time + '</span></p>');
                      arrText.push('</a></div>');
                    }
                    discount.append(arrText.join(''));
                    $(".load").remove();
                  } else {
                    $(".load").remove();
                    discount.append('<div class="no-data">没有更多数据。</div>');
                    $(window).unbind('scroll');
                  };
                  ajax_getting = false;
                }
              });

            };
            $(".load").remove();
          }, 200);
        });
        if (data.error_code == 156006) {
          $('.coupon').html('<div class="error"><h2>出错啦!</h2><p>原因:未登录</p></div>')
        };
        if (data.error_code == 156003) {
          $('.coupon').html('<div class="error"><h2>出错啦!</h2><p>原因:权限不足~请补充</p></div>')
        };
        if (data.error_code == 156007) {
          $('.coupon').html('<div class="error"><h2>出错啦!</h2><p>原因:服务异常</p></div>')
        };
        if (data.error_code == 511) {
          $('.coupon').html('<div class="error"><h2>出错啦!</h2><p>原因:账号未开通直达号</p></div>')
        };
        if (data.error_code == 520) {
          $('.coupon').html('<div class="stays"><span></span><p>暂无核销记录</p></div>')
        }

      },
      error: function (data) {

      }
  })
  $(window).bind("orientationchange", function() {
    $('.sliders').css('left',$(window).width() / 2 +'px');
  })
})

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
Javascript表达式中连续的 &amp;&amp; 和 || 之赋值区别
Oct 17 Javascript
jquery $.getJSON()跨域请求
Dec 21 Javascript
php读取sqlite数据库入门实例代码
Jun 25 Javascript
AngularJS实用开发技巧(推荐)
Jul 13 Javascript
JavaScript排序算法动画演示效果的实现方法
Oct 18 Javascript
jQuery实现级联下拉框实战(5)
Feb 08 Javascript
vue基于Vue2.0和高德地图的地图组件实例
Apr 28 Javascript
Vue.js学习笔记之常用模板语法详解
Jul 25 Javascript
Vue微信项目按需授权登录策略实践思路详解
May 07 Javascript
Vue项目History模式404问题解决方法
Oct 31 Javascript
使用原生js编写一个简单的框选功能方法
May 13 Javascript
Vue props中Object和Array设置默认值操作
Jul 30 Javascript
Javascript实现字数统计
Jul 03 #Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
Jul 03 #Javascript
jQuery中 delegate使用的问题
Jul 03 #Javascript
JavaScript实现select添加option
Jul 03 #Javascript
JavaScript定时器和优化的取消定时器方法
Jul 03 #Javascript
Javascript中的作用域和上下文深入理解
Jul 03 #Javascript
JavaScript访问字符串中单个字符的两种方法
Jul 03 #Javascript
You might like
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
实现php删除链表中重复的结点
2018/09/27 PHP
详解php中curl返回false的解决办法
2019/03/18 PHP
tp5框架内使用tp3.2分页的方法分析
2019/05/05 PHP
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
jQuery UI插件自定义confirm确认框的方法
2015/03/20 Javascript
超赞的动手创建JavaScript框架的详细教程
2015/06/30 Javascript
jQuery模拟select实现下拉菜单功能
2016/06/20 Javascript
EditPlus中的正则表达式 实战(4)
2016/12/15 Javascript
简单好用的nodejs 爬虫框架分享
2017/03/26 NodeJs
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
webpack4.0打包优化策略整理小结
2018/03/30 Javascript
JS使用canvas中的measureText方法测量字体宽度示例
2019/02/02 Javascript
Vue.js中的组件系统
2019/05/30 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
[04:28]DOTA2亚洲邀请赛小组赛第五日 TOP10精彩集锦
2015/02/03 DOTA
深入Python函数编程的一些特性
2015/04/13 Python
Python实现简单HTML表格解析的方法
2015/06/15 Python
numpy排序与集合运算用法示例
2017/12/15 Python
pytorch打印网络结构的实例
2019/08/19 Python
python 5个实用的技巧
2020/09/27 Python
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
什么是抽象
2015/12/13 面试题
幼儿园门卫制度
2014/01/29 职场文书
技能比赛获奖感言
2014/02/14 职场文书
项目施工员岗位职责
2014/03/09 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
2014年学雷锋活动总结
2014/06/26 职场文书
2014年酒店服务员工作总结
2014/12/08 职场文书
村干部任职承诺书
2015/01/21 职场文书
工作能力自我评价2015
2015/03/05 职场文书
毕业论文答辩演讲稿
2015/06/23 职场文书
正则表达式基础与常用验证表达式
2022/06/16 Javascript