我发现 $.each 非常慢,如果包含大量各种 jQuery 效果,会给网页带来问题。
我想知道 $.each 是否有一个好的替代方案,例如:
$('ul li').each(function() {
var singleLi = $(this);
});
没有悬停,我怎样才能在不使用每个的情况下执行相同的操作?
谢谢。
最佳答案
如果您想要“$.each()”的实际替代,只需使用“for”循环即可:
var liElements = $('ul li');
for (var i = 0; i < liElements.length; ++i) {
var li = liElements[i];
// ... lots of various jQuery effects ...
}
您可以跳过“.each()”并直接使用“.hover()”的建议是正确的,但他们没有捕获重点:这些 jQuery 例程无论如何都会在内部执行“.each()”。
但是,我怀疑从“$.each()”切换到“for”循环本身会产生很大的差异。
关于$.each 的 jQuery 替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5746605/