代码实例ajax实现点击加载更多数据图片


Posted in Javascript onOctober 12, 2018

本文给大家介绍ajax如何实现点击加载更多数据图片(预加载)效果的,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>ajax点击加载更多数据--博客园--勇淘未来</title>
    <script type="text/javascript" src="jquery-1.11.1.min.js"></script>
    <style>
      *{padding:0;margin:0;}
      .box {margin: 100px auto;width: 550px;}
      ul li {width:550px;list-style: none;}
      ul li span{text-align:center;display:block;}
      .clear {clear: both;}
      .load {text-align: center;display: none;margin-top:50px;color:#ccc;}
      .end{display:none;color:#ccc;}
    </style>
  </head>
  <body>
    <div class="box">
      <ul></ul>
      <div class="clear"></div>
      <div class="load">加载中...</div>
      <div class="more" style="text-align: center;margin-top:50px;">
        <button class="btn">查看更多图片</button>
        <div class="end">没有更多了</div>
      </div>
    </div>
    <script>
      var num = 0;
      var start = 0;
      var size = 2;
      $.ajax({
        url: "dataNews.json",
        type: "get",
        success: function(res){
          var str = "";
          for(var i = 0;i < 2;i++){
            str += "<li><img src=" + res[i].img + "><span>"+ res[i].title +"</span></li>";
          }
          $(".box ul").append(str);
        },
        error:function(){
          console.log(errors);
        }
      })
      $(".btn").click(function(){
        $(".load").show();
        setTimeout(function(){
          $(".load").hide();
          num++;
          console.log(num);
          start = num * size;
          $.ajax({
            url:"dataNews.json",
            type:"get",
            success:function(res){
              var sum = res.length;
              if(start + size > sum) {
                size = sum - start;
                $(".btn").css("display","none");
                $(".end").css("display","block");
              }
              var str = "";
              for(var i = start;i<(start + size);i++) {
                str += "<li><img src=" + res[i].img + "><span>"+ res[i].title +"</span></li>";
              }
              console.log(start + size);
              $("ul").append(str);
            }
          });
        },300)
      }
    )
    </script>
</body>
</html>

本地测试dataNews.json文件:

[ {
  "img":"img/sina.jpg","title":"百度音乐1"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐2"
}
, {
  "img":"img/sina.jpg","title":"百度音乐3"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐4"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐5"
}
, {
  "img":"img/sina.jpg","title":"百度音乐6"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐7"
}
, {
  "img":"img/sina.jpg","title":"百度音乐8"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐9"
}
, {
  "img":"img/sina.jpg","title":"百度音乐10"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐11"
}
, {
  "img":"img/sina.jpg","title":"百度音乐12"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐13"
}
, {
  "img":"img/sina.jpg","title":"百度音乐14"
}
, {
  "img":"img/tengxu.jpg","title":"百度音乐15"
}
]

点击更多图片,加载2条数据,当数据加载完了,就显示 “没有更多了”

Javascript 相关文章推荐
js实现简单登录功能的实例代码
Nov 09 Javascript
Node.js实现批量去除BOM文件头
Dec 20 Javascript
日常收集整理的JavaScript常用函数方法
Dec 10 Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
Jul 19 Javascript
JavaScript lodash常见用法系列小结
Aug 24 Javascript
通过扫描二维码打开app的实现代码
Nov 10 Javascript
JS基于正则截取替换特定字符之间字符串操作示例
Feb 03 Javascript
Bootstrap fileinput文件上传组件使用详解
Jun 06 Javascript
javascript 作用于作用域链的详解
Sep 27 Javascript
微信小程序防止多次点击跳转(函数节流)
Sep 19 Javascript
JavaScript监听触摸事件代码实例
Dec 30 Javascript
Vue3如何理解ref toRef和toRefs的区别
Feb 18 Vue.js
vue项目环境变量配置的实现方法
Oct 12 #Javascript
原生JS实现自定义下拉单选选择框功能
Oct 12 #Javascript
原生JS实现轮播图效果
Oct 12 #Javascript
详解KOA2如何手写中间件(装饰器模式)
Oct 11 #Javascript
Element Input组件分析小结
Oct 11 #Javascript
element el-input directive数字进行控制
Oct 11 #Javascript
详解angular2.x创建项目入门指令
Oct 11 #Javascript
You might like
Uchome1.2 1.5 代码学习 common.php
2009/04/24 PHP
php简单浏览目录内容的实现代码
2013/06/07 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
phalcon框架使用指南
2016/02/23 PHP
thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法
2018/09/07 PHP
javascript开发随笔一 preventDefault的必要
2011/11/25 Javascript
Jquery UI震动效果实现原理及步骤
2013/02/04 Javascript
jquery 面包屑导航 具体实现
2013/06/05 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
ECMAScript6块级作用域及新变量声明(let)
2015/06/12 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
详解javascript事件冒泡
2016/01/09 Javascript
Bootstrap轮播插件使用代码
2016/10/11 Javascript
vue2.0结合Element实现select动态控制input禁用实例
2017/05/12 Javascript
详解10分钟学会vue滚动行为
2017/09/21 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
Vue中的异步组件函数实现代码
2018/07/20 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
vue render函数动态加载img的src路径操作
2020/10/26 Javascript
[38:30]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场2
2014/05/24 DOTA
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
python多线程扫描端口(线程池)
2019/09/04 Python
python怎么自定义捕获错误
2020/06/29 Python
类、抽象类、接口的差异
2016/06/13 面试题
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
竞争性谈判邀请书
2014/02/06 职场文书
年度献血先进个人事迹材料
2014/02/14 职场文书
网络工程专业自荐信范文
2014/03/16 职场文书
4s店销售经理岗位职责
2014/07/19 职场文书
四风问题专项整治工作情况报告
2014/10/28 职场文书
工人先锋号申报材料
2014/12/29 职场文书
员工工作表扬信
2015/05/05 职场文书
千手观音观后感
2015/06/03 职场文书