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 相关文章推荐
ExtJS 2.2.1的grid控件在ie6中的显示问题
May 04 Javascript
JavaScript中跨域调用Flash的方法
Aug 11 Javascript
jQuery截取指定长度字符串代码
Aug 21 Javascript
JS实现仿QQ聊天窗口抖动特效
May 10 Javascript
JS实现自动定时切换的简洁网页选项卡效果
Oct 13 Javascript
快速解决jquery.touchSwipe左右滑动和垂直滚动条冲突
Apr 15 Javascript
vuejs手把手教你写一个完整的购物车实例代码
Jul 06 Javascript
详解基于Vue-cli搭建的项目如何和后台交互
Jun 29 Javascript
Angular脚手架开发的实现步骤
Apr 09 Javascript
WebGL three.js学习笔记之阴影与实现物体的动画效果
Apr 25 Javascript
Vue表单之v-model绑定下拉列表功能
May 14 Javascript
8个JS的reduce使用实例和reduce操作方式
Oct 05 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
php采用curl访问域名返回405 method not allowed提示的解决方法
2014/06/26 PHP
php实现的IMEI限制的短信验证码发送类
2015/05/05 PHP
Yii2 ActiveRecord多表关联及多表关联搜索的实现
2016/06/30 PHP
PHP常见字符串操作函数与用法总结
2019/03/04 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
laravel 模型查询按照whereIn排序的示例
2019/10/16 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
Firefox和IE浏览器兼容JS脚本写法小结
2008/07/07 Javascript
js iframe跨域访问(同主域/非同主域)分别深入介绍
2013/01/24 Javascript
AngularJS入门教程(一):静态模板
2014/12/06 Javascript
javascript图片预加载完整实例
2015/12/10 Javascript
javascript解决小数的加减乘除精度丢失的方案
2016/05/31 Javascript
详解Node.js:events事件模块
2016/11/24 Javascript
vue事件修饰符和按键修饰符用法总结
2017/07/25 Javascript
vue 父组件调用子组件方法及事件
2018/03/29 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
2018/07/10 Javascript
JS获取当前时间的实例代码(昨天、今天、明天)
2018/11/13 Javascript
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
JavaScript console的使用方法实例分析
2020/04/28 Javascript
对pandas的层次索引与取值的新方法详解
2018/11/06 Python
使用Python的SymPy库解决数学运算问题的方法
2019/03/27 Python
10款最好的Python开发编辑器
2019/07/03 Python
HTML5的download属性详细介绍和使用实例
2014/04/23 HTML / CSS
优衣库英国官网:UNIQLO英国
2016/12/25 全球购物
MIKI HOUSE美国官方网上商店:日本领先的婴儿和儿童高级时装品牌
2020/06/21 全球购物
linux面试相关问题
2013/04/28 面试题
JavaScript实现前端网页版倒计时
2021/03/24 Javascript
大二学期个人自我评价
2014/01/13 职场文书
幼儿园保教管理制度
2014/02/03 职场文书
春节晚会主持词
2014/03/24 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
2015年计划生育协会工作总结
2015/05/13 职场文书
企业反腐倡廉心得体会
2015/08/15 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
导游词之平津战役纪念馆
2019/11/04 职场文书