我正在编写一个名为“myplugin”的jQuery插件,插件方法为“getSomeWhat”。这种方法可能会返回一些例如“.someclass”中元素的attr('id')。 我想保持可连接性,但我无法从互联网上找到。
请告知如何实现。
$(".someclass").myplugin('getSomeWhat').each(function() {
//some stuff for each somewhat
});
谢谢!
William Choi
答案 0 :(得分:2)
您无法返回非jQuery对象并保留可链接性。仅仅因为可链接性依赖于jQuery对象。当然完全有可能返回一个jQuery对象并允许东西链接到那个,但这有点会破坏查找方法的目的。
如果你想迭代返回的集合,你可能会这样做:
var data = $(".someclass").myplugin('getSomeWhat');
$.each(data, function(i, v) {
//i is index, v is value (if using object props, i is the propName
});
这使你成为jQuery泛型迭代器。它可以无缝地迭代数组和对象。