jquery.paginate.js的样式问题

今天在项目中遇到jquery分页插件样式除了问题,当前页无底色,也可以点击。如下:


于是追踪到引入的jquery.paginate.js插件,不知道是不是被别人改过,此代码有点问题。源码如下:

(function (a) {
    a.fn.paginate = function (l) {
        var c = a.extend({pageNo:1, pageSize:25, groupSize:10, totalCount:0, preStr:"<<", nextStr:">>", url:"#none", postFunction:function () {
            alert("没有添加post提交函数");
        }}, l || {});
        if (c.totalCount == 0) {
            return;
        }
        var f = Math.ceil(c.totalCount / c.pageSize);
        var d = Math.ceil(c.pageNo / c.groupSize) - 1;
        var k = Math.floor(f / c.groupSize);
        var e = d * c.groupSize + 1;
        var g = (d + 1) * c.groupSize;
        g = d < k ? g : f;
        var j = (e > 1);
        var b = (g < f);
        this.empty();
        this.appendPage = function (i) {
            if (i === c.pageNo) {
                a("<span>" + i + "</span>").appendTo(this);
            } else {
                a('<a href ="#none" οnclick=\'' + c.postFunction + "(" + i + ");'>" + i + "</a>").appendTo(this);
            }
        };
        if (j) {
            this.appendPage(1);
            a('<a href ="#none" οnclick=\'' + c.postFunction + "(" + (e - 1) + ");'>" + c.preStr + "</a>").appendTo(this);
        }
        for (var h = e; h <= g; h++) {
            this.appendPage(h);
        }
        if (b) {
            a('<a href ="#none" οnclick=\'' + c.postFunction + "(" + (g + 1) + ");'>" + c.nextStr + "</a>").appendTo(this);
            this.appendPage(f);
        }
        a("<span> 总数 " + c.totalCount + "</span>").appendTo(this);
    };
})(jQuery);


发现是第19行 if (i === c.pageNo)这句话有问题,恒等于"==="的判断错了,改成“==”判定当前页与所渲染出的页码是否一致,值相等就可以了,当前页会加上<span>的样式,且不可点击。如下:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值