我有一个div元素,我的代码将充满动态数量的链接。使用jQuery,我想隐藏除第一个链接以外的所有链接。这是我想出的方法,并且有效,我只是想知道这是否是最好的方法:

$("#panelContainer").each(function(n) {
  $(this).children().hide();
  $("#panelContainer a:first").show();
});

最佳答案

您可以使用 :gt() (greater than) selector缩短并加快它的速度,如下所示:

$("#panelContainer :gt(0)").hide();

假设 child 都是 anchor ,这似乎是您的问题,如果您只需要a:gt(0)来影响链接并且还有其他元素,请使用ojit_code。

它更短是因为……嗯,它更短。速度更快,因为您一次选择了父级,一次选择了子级并进行过滤,而不是父级,子级,再次选择父级并过滤后代。另外,就像您的原始作品一样,所有链接都将在禁用javascript的情况下显示。

10-04 15:27