zoukankan      html  css  js  c++  java
  • 基于jquery和knockout.js 写个瀑布流异步加载分页

    <div class="list-view">
        <ul>
            <li data-bind="foreach:datalst">
                <div class="item border clearfix">
                    <div class="face fl">
                        <a target="_blank" data-bind="attr:{'title':userInfo.username}"  href="javascript:void(0)">
                            <img data-bind="attr:{'src':userInfo.myImg}"   class="circle-radius">
                        </a>
                    </div>
                    <div class="cont">
                        <div class="detail">
                            <div class="info">
                                <a class="nickname" data-bind="text:userInfo.username" href="javascript:void(0)" target="_blank"></a>
                            </div>
                            <div class="time" data-bind="text:ctime"></div>
                            <div class="text" data-bind="html:content">
    
                            </div>
                        </div>
                        <div class="handle">
                            <ul class="clearfix">
                                <li>
                                    <a href="javascript:void(0)"><i class="icon icon-share"></i>分享</a>
                                </li>
                                <li>
                                    <a href="javascript:void(0)"><i class="icon icon-review"></i>评论<em>24</em></a>
                                </li>
                                <li>
                                    <a href="javascript:void(0)"><i class="icon icon-thumb"></i><em>24</em></a>
                                </li>
                                <li>
                                    <a href="javascript:void(0)"><i class="icon icon-coin"></i>打赏</a>
                                </li>
                                <li>
                                    <a href="javascript:void(0)"><i class="icon icon-collect"></i>收藏</a>
                                </li>
                            </ul>
                        </div>
                    </div>
                </div>
            </li>
        </ul>
        <p id="a_load_more" class="text_align" style="background: black;" data-bind="click:ajaxGetCommentByPageNum">
            加载更多
        </p>
    </div>
    <script>
        $(document).ready(function () {
            var ViewModel = function () {
                var self = this;
                self.pending = 0;//是否正在请求数据,1表示不能发,0表示可以在发请求
                self.current_comment_page = 1;//当前是第几页;
                self.one_page_num = 10;//每页显示的条数
                self.datalst = ko.observableArray();//双向绑定的数据;
                self.page_max=1;//一个有多少页;
                self.ajaxGetCommentByPageNum = function () {
                    if(self.page_max < self.current_comment_page){
                        layer.msg('数据加载完成了');
                        return false;
                    }
                    if(self.pending == 1){
                        return false;
                    }
                    self.pending = 1;
                    $.ajax({
                        url: '/dksapi/weiboLive/GetSquareLive',
                        data:{pagecount:self.one_page_num,pageindex:self.current_comment_page,source:0},
                        type: 'get',
                        contentType: "application/x-www-form-urlencoded; charset=utf-8",
                        dataType: 'json',
                        success: function (json) {
                            if (json.status === 'success') {
                                for(var i in json.data.dataList){
                                    self.datalst.push(json.data.dataList[i]);
                                }
                                self.page_max=Math.ceil(json.data.dataMeta.totalcount / self.one_page_num);
                                self.current_comment_page++;
                                setTimeout(function () {
                                    self.pending = 0;//请求结束
                                },500)
                            }
                        },
                        error: function () {
                            layer.msg('网络错误');
                        }
                    });
                }
            };
            var currentViewModel = new ViewModel();
            ko.applyBindings(currentViewModel);
        })
    </script>
  • 相关阅读:
    GYM 101128 J.Saint John Festival(求凸包是否包含点)
    GYM 101128 F.Landscaping(网络流)
    ACM ICPC 2017 Warmup Contest 2 I. Integral Polygons(计算几何+动态规划)
    ACM ICPC 2017 Warmup Contest 1 A. Artwork(逆向+dfs+并查集)
    51nod 1225 余数之和(数论)
    51nod 1397 最大二分图(图论+思维)
    51nod 1444 破坏道路(任意两点最短路径)
    网络流24题——孤岛营救问题(状压+分层图)
    ACM 竞赛高校联盟 练习赛 第六场 光头强的强迫症(线段树)
    bzoj1577 [USACO09FEB] Fair Shuttle
  • 原文地址:https://www.cnblogs.com/yexiangwang/p/5899838.html
Copyright © 2011-2022 走看看