Dưới đây tôi có hai bộ chọn jQuery.Sự kiện chuỗi và lặp lại DOM
Tìm kiếm đầu tiên cho phần tử DOM trong đối tượng được lưu trong bộ nhớ cache và sau đó tìm kiếm cha mẹ của nó, sau đó tìm kiếm cha mẹ (bảng) cho phần tử dom khác. (ví dụ: 2)
Tìm kiếm thứ hai (2 dòng) qua phần tử được lưu trong bộ nhớ cache. (ví dụ. 1)
$('element', table.setting.body).on('blur focus', table.focus).parents('parent').find('another element').on('click', function); // ex2
$('element', table.setting.body).on('blur focus', function); // ex 1
$('another element', table.setting.body).on('click', function); // ex 1
Cái nào là nhanh hơn/thực hành tốt nhất?
Ví dụ: 1 sẽ không nghi ngờ gì nữa sẽ nhanh hơn để giải quyết các chức năng jQuery, tức là. .hide().animate().show()
nhưng, khi nào khi tìm kiếm các phần tử DOM?
Sự khác biệt giữa hai yếu tố này sẽ rất nhỏ, có thể không đáng lo ngại.Tôi sẽ đi với tùy chọn 2 chỉ đơn giản là vì nó sẽ được dễ dàng hơn để duy trì. –
http://jsperf.com/ –
Trong ví dụ cụ thể này tôi đồng ý, nhưng làm việc trên một ứng dụng quy mô lớn hơn ràng buộc nhiều yếu tố/lặp lại một dom lớn hơn, nó có thể sẽ tạo sự khác biệt, tôi không biết. Nó chỉ là tốt đẹp để biết, nó có thể hữu ích trong các ví dụ khác. –