我有一个div元素,我的代码将填充一个动态的链接数量.使用
jquery,我想隐藏除第一个之外的所有链接.这是我想出来的,它的作品,我只是想知道这是否是最好的方法:
$("#panelContainer").each(function(n) { $(this).children().hide(); $("#panelContainer a:first").show(); });
解决方法
您可以使用
:gt()
(greater than) selector缩短并加快速度,如下所示:
$("#panelContainer :gt(0)").hide();
这假设孩子们都是锚点,这似乎是你的问题的情况,使用a:gt(0),如果你需要它只影响链接,还有其他元素.
它更短,因为…好,它更短.它更快,因为您选择父一次,孩子一次,过滤,而不是父母,孩子,父母再次和过滤后代.此外,像您的原始,所有链接将显示在JavaScript被禁用的情况下.