伙计们,请帮我找出 Pagination.js 插件,或者也许还有其他好的插件?商店里有一个商品清单,你需要把它分成几部分。已经杀了很多时间了,不可能执行。
$("#pagination-container").pagination({
dataSource: [
1, 2, 3, 4, 5, 6, 7,
],
pageSize: 12,
autoHidePrevious: true,
autoHideNext: true,
callback: function(data, pagination) {
// template method of yourself
var html = template(dataSource);
$("#data-container").html(html);
},
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://pagination.js.org/dist/2.5.0/pagination.min.js"></script>
<div id="data-container"></div>
<div id="pagination-container"></div>
但是在生成页面时,抛出“template is not defined”的错误。我将非常感谢您的帮助。
GitHub 上的Pagination.js插件文档提供了一个定义要分页的输出结构的函数示例。在给出的示例中,数据将显示在无序列表中,其中每个数据元素都包装在一个标签中:
<li>
在回调函数内部初始化分页时调用此函数,形成第一“部分”数据的输出(来自 的数据元素的数量,
dataSource
函数一次处理并显示在一个分页页面上,取决于参数pageSize
).然后每次单击导航元素(页码和箭头)时都会调用此函数,参考
dataSource
,根据活动分页页面的数量获取所需数量的数据元素并进行移位。Pagination.js插件假定分页的初始数据存储在 js 代码中,仅通过将所需数量的数据元素插入具有分页数据的容器中
<div id="data-container"></div>
,删除它们并在每次单击时插入新的元素来更改 DOM 结构导航元素。如果分页数据最初由 elements 表示
html
,定义输出结构的函数会将元素从其在页面结构中的原始位置传输到具有分页数据的容器:然后在分页初始化时,只有第一个
n
元素(n
在参数中指定pageSize
)将从它们的位置移动到数据容器中进行分页:在页面之间移动时,数据元素会根据选择的分页页面从原来的位置移动到分页数据容器中:
为了避免在将数据元素移动到具有分页数据的容器之前在页面结构中显示数据元素,我建议在显示这些元素时为它们添加一个属性
hidden
,并simpleTemplating
在函数中删除该属性。最终代码如下所示。分页元素的CSS取自Pagination.js插件站点。