浏览器js做简单分页(JQuery)

2021-01-01  本文已影响0人  代码狂魔

浏览器js做简单分页(JQuery)

<div class="zxf_pagediv"></div>
<script type="text/javascript">
    /*
     * js实现分页,适用于数据div被外层div包含的情况
     * <div id="masonry">
     *     <div src="data"/>
     *     <div src="data"/>
     *     <div src="data"/>
     *     ...
     * </div>
     */
    var len = 12;//定义每页长度
    var $wrapper = $("div#" + "masonry");

    /*
     * 业务逻辑
     */
    var all = $wrapper.find("div").length;//所有记录数
    var cnt = Math.ceil(all / len);.//总页数
    var pre = 1;//记录之前的页数
    //
    function show(page,len,attr) {
        var start = (page-1) * len;
        var end = start + len;
        for (var i = start ; i < end;i++)
            $wrapper.find("div:eq(" + i + ")").attr("style","display:"+attr+";");
    }
    //show(1,all,'none');//关闭所有div显示,性能更好一点应该是服务器端在每个div上加display:none
    show(1,len,'block');//显示第一页
    //翻页
    $(".zxf_pagediv").createPage({
        pageNum: cnt,
        current: 1,
        backfun: function(e) {
            if (e.current < 1 || e.current > cnt){
                alert('当前页数不存在,回到首页!');
                e.current = 1;
            }
            show(pre,len,'none');//隐藏上一页
            show(e.current,len,'block');//显示当前页
            pre = e.current;//记录当前页
        }
    });
</script>
上一篇 下一篇

猜你喜欢

热点阅读