jquery 写个滚动自动加载插件

分享给大家:


应用 1.  jquery 包 

          2. template.js 包

     

$(function(b) {

    b.fn.scrollAjax = function(d) {
        var a = b(this);
        d = b.extend({}, {
            tpl: ".tpl",
            url: "http://www.yipanwang.com",
            type: "get",
            page: 0
        }, d);
        a.options = d;
        a.options.rpage = 0;
        a.options.pageCount = 0;
        a.loadHtml = "";
        a.loadClass = "";
        a.loadTop = !1;
        a.isScrollBool = !0;
        a.setIsScrollBool = function(b) {
            a.isScrollBool = b
        };
        a.ajax = function() {
            var c, d = template(b(a.options.tpl).html());
            b.ajax({
                url: a.options.url,
                type: a.options.type,
                data: {
                    p: a.options.page
                },
                async: !1,
                contentType: "json",
                dataType: "json",
                success: function(b) {
                    a.options.rpage = b.page;
                    a.options.pageCount = b.pageCount;
                    c = d(b);
                    console.log(c);
                    console.log(a.options.tpl);
                    a.html(c);
                    a.hideLoading()
                },
                error: function() {
                    console.log("error");
                    a.hideLoading()
                }
            })
        };
        a.headerLoading = function() {
            a.loadHtml = "<div class='headerloading'>上加载...</div>";
            b("body").append(a.loadHtml);
            b(".headerloading").css({
                position: "absolute",
                width: b(window).width(),
                height: 10,
                top: b(document).scrollTop() + 50,
                left: 0,
                "text-align": "center"
            });
            a.loadClass = ".headerloading"
        };
        a.footerLoading = function() {
            a.loadHtml = "<div class='footerloading'>下加载...</div>";
            b("body").append(a.loadHtml);
            b(".footerloading").css({
                position: "absolute",
                width: b(window).width(),
                height: 10,
                top: b(window).height() + parseFloat(b(document).scrollTop()) - 100,
                left: 0,
                "text-align": "center"
            });
            a.loadClass = ".footerloading"
        };
        a.centerLoading = function() {
            a.loadHtml = "<div class='centerloading'>加载中...</div>";
            b("body").append(a.loadHtml);
            b(".centerloading").css({
                position: "absolute",
                width: b(window).width(),
                height: 10,
                top: b(window).height() + parseFloat(b(document).scrollTop()) - b(window).height() / 2 + 20,
                left: b(window).width() / 2 - 20,
                "text-align": "center"
            });
            a.loadClass = ".centerloading"
        };
        a.hideLoading = function() {
            "" != a.loadHtml && (b(a.loadClass).remove(), a.loadHtml = "")
        };
        a.setTimeOutScrollTop = function() {
            if (10 > parseFloat(b(document).scrollTop())) {
                if (0 < a.options.rpage) return a.options.page = a.options.rpage - 1, a.headerLoading(), b(document).scrollTop(12), !0;
                b(document).scrollTop(0)
            }
            return !1
        };
        a.scrollWindows = function() {
            var c = !1;
            1 == a.setTimeOutScrollTop() && (c = !0);
            console.log("top:" + b(document).scrollTop());
            parseFloat(b(window).height()) + parseFloat(b(document).scrollTop()) >= b(document).height() && a.options.rpage < a.options.pageCount && (a.options.page = a.options.rpage + 1, c = !0, a.footerLoading());
            1 == c ? a.ajax() : a.hideLoading()
        };
        a.init = function() {
            a.centerLoading();
            a.ajax();
            b(window).scroll(function() {
                1 == a.isScrollBool && a.scrollWindows()
            })
        };
        a.init();
        return {
            setIsScrollBool: a.setIsScrollBool
        }
    }

});

下面是写的应用步骤


 <div class="am-list-news-bd am-list-news-default">
 <!--物业沟通列表-->
  <ul class="am-list">
      <!--不带标题图-->
    请稍等...
      <!--不带标题图-->

    </ul>

     <script id="tpl" type="text/html">
         <%for(i=0;i<list.length;i++){%>
         <li class="am-g am-list-item-desced">
             <div class=" am-list-main">
                 <h3 class="am-list-item-hd"><a href="http://www.yipanwang.com/<%=list[i].url%>" class=""><%=list[i].c_title%></a></h3>
                 <div class="am-list-item-text"><%=getLocalTime(list[i].c_time)%></div>
             </div>
         </li>
         <%}%>
     </script>
  </div>

<script>


    $(document).ready(function(){

        var obj=$(".am-list").scrollAjax({tpl:"#tpl",url:"{:U("Yeweihuicenter/ajaxchapter",array("village_id"=>$vo["village_id"],"n"=>$_GET["n"]))}",type:"get",page:0});
        //obj.setIsScrollBool(false);
    });

</script>


大家有意向获取实例可以上“一盘网” 找联系我们的平台服务下的邮箱 发邮件给我。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值