首页 > 编程 > JavaScript > 正文

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

2019-11-19 12:43:09
字体:
来源:转载
供稿:网友

本文给大家介绍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条数据,当数据加载完了,就显示 “没有更多了”

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表