首页 >web前端 >js教程 >js滚动点击加载更多数据代码怎么实现?

js滚动点击加载更多数据代码怎么实现?

藏色散人
藏色散人原创
2018-08-06 11:03:513782浏览

本篇文章主要介绍了js实现滚动条滚动到页面底部实现点击加载更多的功能,相对于多数网站中采用iscroll.js实现上拉加载更多或者下拉刷新功能更便于大家理解。这里简单的思路就是,页面上的全部数据,按照显示要求,哪些部分显示,那么剩余的隐藏。若还有数据,只要点击下加载更多,继续显示数据;直到没有更多数据显示,就会出现加载完毕。

加载时可设置显示“正在加载……”更多数据未显示可在底部加上“点击加载更多”按钮。直至没有更多数据,即显示全部加载完毕。

js滚动点击加载更多数据具体示例代码如下

<div class="loading">
    <div class="hidden"></div>
    <ul class="img-list"><li class="pic_list_3"><div class="pic_list_li"><div class="img"><a href="www.php.cn"><img  src="img/1.png" alt="" width="100" height="100"></a>
    </div><p class="msg"><a href="www.php.cn">示例</a></p><p class="y"> </p></div></li><li class="pic_list_3"><div class="pic_list_li"><div class="img"><a href="www.php.cn"><img  src="img/2.png" alt="XC-PH-W02" width="100" height="100"></a>
    </div><p class="msg"><a href="www.php.cn">示例</a></p><p class="y"> </p></div></li><li class="pic_list_3"><div class="pic_list_li"><div class="img"><a href="www.php.cn"><img  src="img/3.png" alt="XC-PH-W06" width="100" height="100"></a>
    </div><p class="msg"><a href="www.php.cn">示例</a></p><p class="y"> </p></div></li><li class="pic_list_3"><div class="pic_list_li"><div class="img"><a href="www.php.cn"><img  src="img/4.png" alt="XC-PH-W07" width="100" height="100"></a>
    </div><p class="msg"><a href="www.php.cn">示例</a></p><p class="y"> </p></div></li></ul>
    <a href="javascript:;" onclick="loading.loadMore();"><div class="btn-more">点击加载更多</div></a>
</div>
<script src="js/jquery.min.js"></script>
<script>
    var _content = [];//临时存储li循环内容
    var loading = {
        _default : 9,//默认显示图片个数
        _loading : 9,//每次点击按钮后加载的个数
        init : function() {
            var lis = $(".loading .hidden li");
            $(".loading ul.img-list").html("");
            for (var n = 0; n < loading._default; n++) {
                lis.eq(n).appendTo(".loading ul.img-list");
            }
            $(".loading ul.img-list img").each(function() {
                $(this).attr(&#39;src&#39;, $(this).attr(&#39;realSrc&#39;));
            })
            for (var i = loading._default; i < lis.length; i++) {
                _content.push(lis.eq(i));
            }
            $(".loading .hidden").html("");
        },
        loadMore : function() {
            var mLis = $(".loading ul.img-list li").length;
            for (var i = 0; i < loading._loading; i++) {
                var target = _content.shift();
                if (!target) {
                    $(&#39;.loading .btn-more&#39;).html("<p>全部加载完毕</p>");
                    break;
                }
                $(".loading ul.img-list").append(target);
                $(".loading ul.img-list img").eq(mLis + i).each(function() {
                    $(this).attr(&#39;src&#39;, $(this).attr(&#39;realSrc&#39;));
                });
            }
        }
    }
    loading.init();
</script>

希望本篇文章介绍关于用js实现点击加载更多数据的功能对大家有所帮助!

【相关文章推荐】

Jquery如何实现上拉加载更多

基于ajax实现点击加载更多无刷新载入到本页

vue中如何实现滚动加载更多的功能

$.ajax+php实战教程之下拉时自动加载更多文章原理讲解

实现页面上拉加载效果的实例代码




以上是js滚动点击加载更多数据代码怎么实现?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn