我正在使用同时使用jQuery和underscore.js的应用程序。我希望能够使用一些下划线的迭代器函数,例如any()
和all()
来覆盖jQuery对象的集合。有没有办法做到这一点?我想要做类似如下的内容:在jQuery对象集合上使用underscore.js列表函数
checkboxes = $("input[type=checkbox]");
_.filter(checkboxes, function(box) {
return box.is(":checked");
});
但是这将引发一个错误:
Uncaught TypeError: Object #<HTMLInputElement> has no method 'is'
所以我假设在这种情况下框没有表现得像一个jQuery对象。
是不是有一个原因不只是做'$(“input [type = checkbox]:checked”)'? – Esailija 2012-01-10 20:26:03
在这种情况下,我可以这样做,但我一般会询问所有的下划线交互方法,包括_.any(),_.all()等。 – GSto 2012-01-10 21:03:20
在处理一个元素时,您很少需要jQuery时间,例如你可以刚刚完成'return box.checked'; – Esailija 2012-01-10 21:10:04