我知道我可以使用jQuery .each()函数(效果很好),但是性能太慢了。所以我想使用一个for循环,并在其中使用jQuery方法。
例如:

var anArray = $('#somediv').children(); // it has a lot of children
for(i=0;i<anArray.length;i++) { // or for(i=anArray.length;i--;)
  anArray[i].addClass('sample_class'); // and a bunch of other stuff
};

现在浏览器抛出此错误:
Uncaught TypeError: Object #<HTMLDivElement> has no method 'addClass'
认为它与jQuery包装器$()有关
我知道我前一段时间读过该解决方案,但我无法追溯它。

最佳答案

准确地包装它,因为它们是DOM元素,实际上没有addClass方法:

$(anArray[i]).addClass('sample_class');

引用:http://api.jquery.com/children/

关于javascript - 如何使jQuery方法在for循环中工作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18243217/

10-09 20:03
查看更多