1

我需要在一个网站上使用 jQuery 进行大量 HTML 操作,其中数百种产品显示在相同的结构中。几乎每个代码块都单独包装在具有相同类名的 div 容器中。

现在我想知道是否应该在类名中插入一个唯一 ID,以便可以使用 $('#ID') 而不是 $('.class') 进行 HTML 操作。从这篇文章#3 中得到这个想法。

我可能会使用 for 循环在类之后插入一个 id 来创建 ID。这值得花时间吗?更重要的是它会帮助性能吗?

编辑: 对于我要进行的操作类型,for 循环肯定会经常使用。另外,我不太确定分页是否对性能有任何意义。现在产品每页显示 10 个,用户可以选择每页查看更多。

4

2 回答 2

1

是的,ID 选择器效率更高。使用它们来缩小您的范围,然后您可以稍后按班级进行选择。此外,保存可能重复使用的选择。

var container = $("#someId");
var products = container.find(".product");

//later on...

products.find(".class").doSomething();

另外,请记住,这.children().find()- 所以尽可能使用它。

于 2013-02-06T22:36:49.420 回答
0

这样做可能是一个好习惯,但是如果您的页面很大(有很多元素)或者如果您多次选择元素(即在循环内),您只会注意到差异

从循环中选择您需要的元素并在内部使用对它的引用会更好、更容易

var obj = $('#someid');
while (expression){obj.something();}
于 2013-02-06T22:37:47.910 回答