今天我非常喜欢 Work 和 jQ。我得到了一个早晨,但我无法解决它:(。 我在这里的工作:
<div class="container">
<p class="test">a</p>
<div>
<p class="test">a</p>
</div>
</div>
在正常情况下,我可以将 jQ 与每个函数一起使用 for
全选<p class="test">a</p>
例如:
$(".test").each(function() {
$(this).text('a');
});
但我听到每个人都在谈论,for
函数的时间负载比 each
少功能。现在我想使用 for
而不是 each
..但我不知道在这种情况下如何编写代码 jQ。
有人可以帮助我!谢谢!
最佳答案
除非您迭代数百个,否则我不会担心。
for
循环通常与普通 DOM(也就是没有 jQuery)遍历一起使用,例如...
var elements = document.getElementById('something').getElementsByTagName('a');
var elementsLength = elements.length;
for (var i = 0; i < elementsLength; i++) {
elements[i].style.color = 'red';
}
elementsLength
的缓存是个好主意,因此不会在每次迭代时都计算它。感谢CMS对于评论中的这个建议。
如果您想用 jQuery 来做,只需将其改编为您的 jQuery 对象即可。
将 elements
变量替换为您的 jQuery 集合,例如 $('#something a')
。我认为如果你需要用它做更多的 jQuery 事情,你可能需要重新包装这个对象。
关于javascript - 如何在 jquery 中使用 "For"而不是 "each"函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3074226/