在页码数很大的情况下,最后一个页码数在第一次加载时,会产生第二行,原因是生成ul时的宽度计算代码,如下:
_ul是<ul>元素,包含页码<li>元素,可以看出ul的宽是来自li的offsetWidth属性累加,而这个属性返回的是整数,所以在大数量页码的情况下,会丢失精度,这个精度大概是14px。所以可以在最后一条代码中insidewidth手动加上14像素。保证第一次不会偏差。
不过不建议使用大数量的页码,毕竟是由js代码生成的,数量大了就会导致浏览器宕机。
10000个页码,生成时间在27000毫秒多
5000个页码,生成时间在1000毫秒多一点
2500个页码,生成时间在480毫秒左右
100个页码,生成时间在25毫秒左右
看情况使用多少页码。