假设我们有一个 jQuery 分页器插件。所以我可以这样做:
$("pager-div").pager({ page: 1, rowsPerPage: 30, count: 1780 });
好的。现在我想将寻呼机移至下一页。我这里有两个选择:
1) 我的插件 $.pager
不返回 jQuery。它返回一个对象,该对象具有名为 nextPage
的方法,因此我可以执行以下操作:
var pager = $("pager-div").pager({ page: 1, rowsPerPage: 30, count: 1780 });
pager.nextPage();
2) 我的插件返回 jQuery。更好的是它保持了可链接性。所以我可以做这样的事情:
$("pager-div").pager({ page: 1, rowsPerPage: 30, count: 1780 });
$("pager-div").nextPage();
这里有两个问题:
- 在我看来,方法 2 更好,因为它保持了可链接性,而且我不需要保留对寻呼机的引用。我可以使用 $ 函数在任何地方访问它。问题是:我应该使用方法2吗?
- 如果(1)的答案为真,我该如何实现?也就是说,如何在 jQuery 中维护状态?
最佳答案
我投票给选项2。你可以将控制的变量存储在jQuery的数据字段中。
示例:
$(selector).data("option", {page: 1});
alert($.data("option").page);
关于javascript - 创建有状态的 jQuery 插件是最佳实践吗?如果是这样,我该怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7731115/