我不明白我做错了什么。我有以下的html元素:
<div id="accordion">
<h3>
<a href="#">Section 1</a></h3>
<div>
<p>
Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer ut neque.
Vivamus nisi metus, molestie vel, gravida in, condimentum sit amet, nunc. Nam a
nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut odio. Curabitur malesuada.
Vestibulum a velit eu ante scelerisque vulputate.
</p>
</div>
<h3>
<a href="#">Section 2</a></h3>
<div>
<p>
Sed non urna. Donec et ante. Phasellus eu ligula. Vestibulum sit amet purus. Vivamus
hendrerit, dolor at aliquet laoreet, mauris turpis porttitor velit, faucibus interdum
tellus libero ac justo. Vivamus non quam. In suscipit faucibus urna.
</p>
</div>
</div>
这个元素(<div id='accordion'>
)清楚地显示它的第一个子元素是h3标签,下一个子元素是div标签,然后是h3等等。
我想选择这个div的第一个子元素。换句话说,我想选择第一个h3标签。
因此,我尝试过:
```javascript $('#accordion').children(':first-child'); ```
但是这不起作用。
$("#accordion:first-child").css("font-size","30px");
也可以。
$("#accordion:first").css("font-size","30px");
双向方式将30像素字体应用于主div元素(<div id='accordion'>
)
我做错了什么,我只想选择手风琴的第一个子元素,很明显是h3标签
编辑
哇,我只是缺少了一个空格。 这个页面 没有包含这个空格。
我不得不改变我的代码
$("#accordion:first").css("font-size","30px");
TO
$("#accordion :first").css("font-size","30px");
element:first-child
返回的是它们父元素的第一个子元素。 - Viruzzodiv
,他们选择了第一个子元素是span
的元素。因此他们的选择器是div span:first-child
,他们想要的是第一个祖先是div
的span
元素。 - Chad.children().first()
是最快的,速度相差非常大:http://jsperf.com/first-vs-children/2 - Chad.children().first()
大致相当于.children[0]
,而.children(':first')
在每个子元素上执行选择器检查。因此,我建议使用.children().first()
甚至.children().eq(0)
... - Šime Vidas