2012-01-19 64 views

Trả lời

145

Nếu bạn Knô w các phần tử con bạn quan tâm là người đầu tiên:

$('.second').children().first(); 

Hoặc tìm theo chỉ số:

$('.second').children().eq(0); 
3

Bạn có thể nhận được phần tử đầu tiên thông qua chỉ số selector:

$('div.second div:eq(0)') 

Code: http://jsfiddle.net/RX46D/

+1

bộ chọn chỉ mục không hợp lệ. Sử dụng phương pháp thay vào đó, chúng nhanh hơn – Raynos

2
$('.second').find('div:first') 
+0

': chọn đầu tiên' không thực hiện – Raynos

-7

var node = document.getElementsByClassName("second")[0].firstElementChild

Disclaimer: trình duyệt tuân thủ trên getElementsByClassNamefirstElementChild bị rung. DOM-shims sửa chữa những vấn đề mặc dù.

+0

Hãy nhớ rằng nếu OP đang tìm DIV đầu tiên, điều này sẽ không hoạt động nếu có bất kỳ phần tử HTML nào giữa .second và #selFirst. – Magrangs

+0

Anh ta nói "DIV đầu tiên" ở đâu. Anh ta nói ở đâu "sẽ có các yếu tố giữa. Giây và #selFirst" – Raynos

+2

Tôi đã nói "NẾU OP ....." – Magrangs

1

Không phải là anh chị em thứ hai trở về thay vì trẻ em?

var $selFirst = $(".second:nth-child(1)"); 

sẽ trả về phần tử đầu tiên với lớp 'giây'.

var $selFirst = $(".selector:nth-child(1)"); 

nên cung cấp cho bạn các anh chị em đầu tiên của lớp '.selector'

11

Có những cách sau để chọn đứa con đầu lòng

1) $('.second div:first-child')
2) $('.second *:first-child')
3) $('div:first-child', '.second')
4) $('*:first-child', '.second')
5) $('.second div:nth-child(1)')
6) $('.second').children().first()
7) $('.second').children().eq(0)
+1

Rất muốn biết so sánh hiệu suất. – GollyJer

+0

càng có nhiều lựa chọn bạn cung cấp, bạn càng nhận được nhiều ưu đãi! –

Các vấn đề liên quan