分页带省略号-中间三个点


 

 

上图

 

 

 

 

 

上代码

 新建html文件,代码如下:

<html>

<head>
    <script src="jquery.min.js"></script>
</head>

<body>
    <div class="pageContent">
        <div class="page">
            <div class="el-pagination">
                <span class="prev">上一页</span>
                <ul id="pageNav"></ul>
                <span class="next">下一页</span>
                <!-- <span id="endPage">尾页</span> -->
            </div>
        </div>
    </div>
</body>
<script>
    var pageSize = 10//总页数

    var curNum = 2//每页显示数

    pageMain(pageSize, curNum)
    
    function pageMain(pageSize, curNum) {
        $(function () {
            $(".thispage").html(1);
            tabPage({
                pageMain: '.listContentitems', //  数据库
                pageNav: '#pageNav', //  第几页
                pagePrev: '.prev', //  上一页
                pageNext: '.next', //  下一页
                endPage: '#endPage', //  最后一页
                curNum: curNum,
                pageSize: pageSize,
                /*每页显示的条数*/
                activeClass: 'active',
                /*选中的页数*/
                ini: 0 /*初始化显示的页面*/
            });
            function tabPage(tabPage) { // 分页的方法
                var pageMain = $(tabPage.pageMain);
                /*获取内容列表*/
                var pageNav = $(tabPage.pageNav);
                /*获取分页*/
                var pagePrev = $(tabPage.pagePrev);
                /*上一页*/
                var pageNext = $(tabPage.pageNext);
                /*下一页*/
                var endPage = $(tabPage.endPage);

                var curNum = tabPage.curNum;
                /*每页显示数*/
                var len = tabPage.pageSize;
                /*计算总页数*/
                $(".totalpage").html(len)
                console.log(len)
                // console.log(pageMain.find(".item").length);
                var pageList = '';
                /*生成页码*/
                var iNum = 0;
                /*当前的索引值*/

                var pageSize = len;

                // 页码大于等于4的时候,添加第一个页码元素
                if ((iNum + 1) != 1 && (iNum + 1) >= 4 && pageSize != 4) {

                    pageList += '<a href="javascript:;">' + 1 + +'</a>';
                }
                /* 当前页码>4, 并且<=总页码,总页码>5,添加“···”*/
                if ((iNum + 1) - 2 > 2 && (iNum + 1) <= pageSize && pageSize > 5) {
                    pageList += '<a href="javascript:;">...</a>';
                }
                /* 当前页码的前两页 */
                var start = iNum - 2;
                /* 当前页码的后两页 */
                var end = (iNum + 1) + 2;

                if ((start > 1 && (iNum + 1) < 4) || (iNum + 1) == 1) {
                    end++;
                }
                if ((iNum + 1) > pageSize - 4 && (iNum + 1) >= pageSize) {
                    start--;
                }
                for (; start <= end; start++) {
                    if (start <= pageSize && start >= 1) {
                        pageList += '<a href="javascript:;">' + start + '</a>';
                    }
                }
                if ((iNum + 1) + 2 < pageSize - 1 && (iNum + 1) >= 1 && pageSize > 5) {
                    console.log(1111)
                    pageList += '<a href="javascript:;">...</a>';
                }

                if ((iNum + 1) != pageSize && (iNum + 1) < pageSize - 2 && pageSize != 4) {
                    pageList += '<a href="javascript:;">' + pageSize + '</a>';
                }

                $("#pageNav").html(pageList);

                /*头一页加高亮显示*/
                $("#pageNav").find("a:first").addClass(tabPage.activeClass);


                $(".listContentitems").find(".item").hide();
                /************首页的显示*********/
                for (var i = 0; i < curNum; i++) {
                    $(".listContentitems").find(".item").eq(i).show()
                }

            }
        })
    }

  
        var val = ''
        $(".el-pagination").on("click", "ul a", function () {
            let index = $(".el-pagination ul a").index(this);
            console.log(index)
            val = $(".el-pagination ul a").eq(index).text()

            val = parseInt(val)
            pageFn(val, pageSize)
            $(".el-pagination ul a").removeClass("active");
            $(".el-pagination ul a").each(function () {
                if ($(this).text() == val) {
                    $(this).addClass("active");
                }
            })

            $(".thispage").html(val);
            $(".tableMiddle").find(".tableItem").hide();
            for (var i = ($(this).html() - 1) * curNum; i < ($(this).html()) * curNum; i++) {
                $(".tableMiddle").find(".tableItem").eq(i).show()
            }
        })

        /*上一页*/
        $(".prev").on("click", function () {
            console.log('上一页')
            $(".tableMiddle").find(".tableItem").hide();
            if (val == '') {
                val = 1
            }
            if (val == 1) {
                alert('当前是第一页');
                $(".thispage").html(1);
                for (var i = 0; i < curNum; i++) {
                    $(".tableMiddle").find(".tableItem").eq(i).show()
                }
                return false;
            } else {

                pageFn(val, pageSize)
                $(".thispage").html(val - 1);
                $("#pageNav").find("a").removeClass("active");
                val--;
                $(".el-pagination ul a").each(function () {
                    if ($(this).text() == val) {
                        $(this).addClass("active");
                    }
                })
            }
            for (var i = (val - 1) * curNum; i < val * curNum; i++) {
                $(".tableMiddle").find(".tableItem").eq(i).show()
            }
        })

        // 下一页
        $(".next").on("click", function () {
            $(".tableMiddle").find(".tableItem").hide();
            if (val == pageSize) {
                alert('已经是最后一页');
                $(".thispage").html(val);
                for (var i = (pageSize - 1) * curNum; i < pageSize * curNum; i++) {
                    $(".tableMiddle").find(".tableItem").eq(i).show()
                }
                return false;
            } else {
                if (val == '') {
                    val = 1
                }
                pageFn(val, pageSize)
                $(".thispage").html(val + 1);
                $("#pageNav").find("a").removeClass("active");
                val++;
                $(".el-pagination ul a").each(function () {
                    if ($(this).text() == val) {
                        $(this).addClass("active");
                    }
                })
            }
            for (var i = (val - 1) * curNum; i < val * curNum; i++) {
                $(".tableMiddle").find(".tableItem").eq(i).show()
            }
        });



    function pageFn(val, pageSize) {
        $("#pageNav").html('');
        var pageList = ''

        // 页码大于等于4的时候,添加第一个页码元素
        if (val != 1 && val >= 4 && pageSize != 4) {
            pageList += '<a href="javascript:;">' + 1 + '</a>';
        }
        /* 当前页码>4, 并且<=总页码,总页码>5,添加“···”*/
        if (val - 2 > 2 && val <= pageSize && pageSize > 5) {
            pageList += '<a href="javascript:;">...</a>';
        }
        /* 当前页码的前两页 */
        var start = val - 2; //-1
        /* 当前页码的后两页 */
        var end = val + 2; //3
        if ((start > 1 && val < 4) || val == 1) {
            end++;
        }
        if (val > pageSize - 4 && val >= pageSize) {
            start--;
        }

        for (; start <= end; start++) {
            if (start <= pageSize && start >= 1) {
                pageList += '<a href="javascript:;">' + start + '</a>';
            }
        }
        if (val + 2 < pageSize - 1 && val >= 1 && pageSize > 5) {
            pageList += '<a href="javascript:;">...</a>';
        }

        if (val != pageSize && val < pageSize - 2 && pageSize != 4) {
            pageList += '<a href="javascript:;">' + pageSize + '</a>';
        }

        // pageList +='<li><a data="' + data.pageCount + '">&raquo;</a></li>';
        $("#pageNav").html(pageList);

    }
</script>
<style>
    .pageContent {
        height: 100px;
        background-color: #fff;
        margin-bottom: 62px;
    }

    .page {
        text-align: center;
        padding: 30px 0;
    }

    .page {
        padding: 28px 0 0 0;
    }

    .page span {
        display: inline-block;
        width: 60px;
        height: 24px;
        line-height: 24px;
        text-align: center;
        color: #000;
    }

    .el-pagination button,
    .el-pagination span:not([class*=suffix]) {
        display: inline-block;
        font-size: 13px;
        min-width: 35.5px;
        height: 40px;
        line-height: 37px;
        vertical-align: top;
        box-sizing: border-box;
        border: 1px solid #DADADA;
        color: #666666;
        width: 80px;
    }

    #pageNav {
        display: inline-block;
    }

    a {
        text-decoration: none;
        font-size: 16px;
        font-size: 12px;
        color: #333;
    }

    #pageNav a {
        display: inline-block;
        width: 40px;
        height: 40px;
        line-height: 37px;
        text-align: center;
        color: #666666;
        border: 1px solid #DADADA;
        text-decoration: none;
    }

    #pageNav a.active,
    #pageNav a:hover {
        color: #2E5EC0;
        font-weight: bold;
    }

    .el-pager {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        list-style: none;
        display: inline-block;
        vertical-align: top;
        font-size: 0;
        padding: 0;
        margin: 0;
    }

    .page .el-pager li.active {
        height: 26px;
        width: 26px;
        color: #fff;
        background: #ec554c;
    }

    .el-pager li.active {
        color: #606ca5;
        cursor: default;
    }

    .page .el-pager li {
        height: 26px;
        width: 26px;
        min-width: 26px;
        line-height: 26px;
        margin-left: 8px;
        border-radius: 26px;
        background: transparent;
    }

    .el-pager li {
        padding: 0 4px;
        background: #fff;
        vertical-align: top;
        display: inline-block;
        font-size: 13px;
        min-width: 35.5px;
        height: 28px;
        line-height: 28px;
        cursor: pointer;
        box-sizing: border-box;
        text-align: center;
        margin: 0;
    }

    li {
        list-style-type: none;
    }

    .el-pager li.btn-quicknext,
    .el-pager li.btn-quickprev {
        line-height: 28px;
        color: #303133;
    }
    ul {
        padding: 0;
        margin: 0;
        box-sizing: border-box;
    }
    .page .el-pager li {
        height: 26px;
        width: 26px;
        min-width: 26px;
        line-height: 26px;
        margin-left: 8px;
        border-radius: 26px;
        background: transparent;
    }

    .el-pager li {
        padding: 0 4px;
        background: #fff;
        vertical-align: top;
        display: inline-block;
        font-size: 13px;
        min-width: 35.5px;
        height: 28px;
        line-height: 28px;
        cursor: pointer;
        box-sizing: border-box;
        text-align: center;
        margin: 0;
    }

    [class*=" el-icon-"],
    [class^=el-icon-] {
        font-family: element-icons !important;
        speak: none;
        font-style: normal;
        font-weight: 400;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        vertical-align: baseline;
        display: inline-block;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    .el-pager .more:before {
        line-height: 30px;
    }
</style>

</html>
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM