Как вернуть массив объектов из метода плагина jQuery с возможностью цепочки? - PullRequest
0 голосов
/ 24 февраля 2011

Я пишу плагин jQuery под названием «myplugin» с методом плагина «getSomeWhat».Эти методы могут возвращать коллекцию, например, attr ('id') элемента (ов) в ".someclass".Я бы хотел сохранить возможность объединения, но не могу найти в Интернете.

Пожалуйста, посоветуйте, пожалуйста, как этого добиться.

$(".someclass").myplugin('getSomeWhat').each(function() {
    //some stuff for each somewhat
});

Спасибо!

УильямChoi

1 Ответ

2 голосов
/ 24 февраля 2011

Вы не можете вернуть объект не 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.Он может беспрепятственно перебирать как массив, так и объекты.

...