Trong jQuery documentation for the child selector tôi thấy ghi chú này:Cách thích hợp mới để sử dụng bộ chọn con với một nút bối cảnh trong jQuery là gì?
Lưu ý: Các selector
$("> elem", context)
sẽ bị phản đối trong một thông cáo trong tương lai. Do đó, việc sử dụng nó không được khuyến khích thay cho việc sử dụng các bộ chọn thay thế.
tôi sử dụng mô hình này tất cả các thời gian, thường là như thế này:
$nodes.find('> children[something=morecomplicated] > somethingelse');
Tuy nhiên, tôi không hiểu những gì các "bộ chọn thay thế" họ đề cập đến có thể được. Cách nào đúng để viết bộ chọn đi ngang qua các nút con ngay lập tức của một nút ngữ cảnh? Là tiền thưởng, bất cứ ai có thể giải thích lý do tại sao điều này được khấu hao? Tất cả các lựa chọn thay thế mà mọi người đều cho là đáng kinh ngạc xấu xí.
Dưới đây là một số điều mà không công việc:
// does not guarantee that '.child' is an immediate child
$nodes.find('.child > .grandchild');
// this will return empty array in recent jQuery
// and will return full list of children in older jQuery
$nodes.children('.child > .grandchild');
// Anything like this which forces you to split up the selector.
// This is ugly and inconsistent with usual selector ease-of-use,
// and is a non-trivial conversion for long or complex selectors.
$nodes.children('.child').children('.grandchild');
// After all, no one would ever recommend
$nodes.find('.this').children('.that');
// instead of
$nodes.find('.this > .that');
Xem ở đây để biết thêm thông tin: http: // stackoverflow. com/questions/7833558/child-selector-deprecated –
Ah, tôi không thấy câu hỏi đó ngay cả sau khi tìm kiếm siêng năng. Không ai trong số các câu trả lời thực sự là rất thỏa đáng, mặc dù. –
Bạn chắc chắn nâng cao điểm tốt. Tuy nhiên, trừ khi bạn phát hiện ra điều gì đó mà tôi hiện không biết, tôi nghĩ rằng việc kết nối các cuộc gọi cho trẻ em và tách bộ chọn có lẽ là lựa chọn duy nhất của bạn. – Dan