使用jquery隐藏除第一个元素之外的所有内容

时间:2011-06-21 15:30:29

标签: jquery

是否有一种方法可以隐藏一个选择器中的所有特定类型的元素。我知道你可以这样做:

$('p').hide();
$('p:first(or :eq(0)').show()

可能是这样的:

$('p:eq(>0)')

2 个答案:

答案 0 :(得分:22)

slice()可能会提供最佳效果:

$('p').slice(1).hide();

...其中1是结果中的第二个元素,0将是第一个元素。这更快,因为它使用本机方法而不是自定义过滤器。

或者,您可以使用:not().not()

$('p:not(:first)').hide();

//or $('p').not(':first').hide();

答案 1 :(得分:6)

http://jsfiddle.net/x6DEY/

$("p").not(":first").hide();

这也应该有效,但很难看:

$("div:not(:first)").hide();