1

我有一个包含四个段落标签的 div。加载页面时,我希望显示前两段,然后隐藏后面的段落元素,但我不知道该怎么做。为简单起见,我在下面的 jsfiddle 示例中将事件设置为按钮而不是文档就绪事件。

http://jsfiddle.net/zTCFe/4/

<div id="div">
<p>1 keep me shown</p>
<p>2 keep me shown</p>
<p>3 hide me</p>
<p>4 hide me</p>
</div>

<input type="button" value="press" id="button"/>

<script>

$('#button').click(function () {

$('#div').children().hide();

});

</script>
4

5 回答 5

3

你几乎在那里:

$('#div').children(':gt(1)').hide();

更多关于:gt选择器的信息。

http://jsfiddle.net/gromer/Tdue6/1/

于 2012-10-11T00:05:03.160 回答
1

使用:gt() 选择器来选择它们

于 2012-10-11T00:05:12.830 回答
1

您可以使用:gt()选择器:

$("#div p:gt(1)").hide();

或者,您也可以使用.slice()从 jQuery 对象的 DOM 数组中选择特定元素:

$("#div p").slice(2).hide();
于 2012-10-11T00:05:36.353 回答
1

作为替代方案,您也可以使用 .slice()

$('#div').children().slice(2).hide();

http://api.jquery.com/slice/

于 2012-10-11T00:07:49.500 回答
0

您也可以为此使用 CSS

li:nth-child(-1n+2) {
    background: yellow;
}
于 2012-10-11T01:07:42.987 回答