Phương pháp parentsUntil() trong lặp jQuery
Mô hình
Tìm các phần tử tổ tiên của <li class="item-a"> cho đến khi gặp <ul class="level-1">, và đặt chúng thành nền đỏ. Đồng thời, tìm tất cả các phần tử tổ tiên của <li class="item-2"> có tên lớp "yes", cho đến khi gặp <ul class="level-1">, và đặt viền cho chúng thành xanh dương:
$("li.item-a");.parentsUntil(".level-1"); .css("background-color", "red"); $("li.item-2");.parentsUntil($("ul.level-1"), ".yes"); .css("border", "3px solid blue");
Định nghĩa và cách sử dụng
parentsUntil() lấy các phần tử tổ tiên của mỗi phần tử trong bộ sưu tập phần tử khớp hiện tại, cho đến khi (nhưng không bao gồm) phần tử khớp với biểu thức chọn, nút DOM hoặc đối tượng jQuery.
Cú pháp 1
.parentsUntil(selector,filter)
Tham số | Mô tả |
---|---|
selector | Tùy chọn. Giá trị chuỗi, quy định nơi dừng việc khớp phần tử tổ tiên. |
filter | Tùy chọn. Giá trị chuỗi, chứa biểu thức chọn được sử dụng để khớp phần tử. |
Cú pháp 2
.parentsUntil(element,filter)
Tham số | Mô tả |
---|---|
element | Tùy chọn. Nút DOM hoặc đối tượng jQuery, chỉ định nơi dừng việc khớp phần tử tổ tiên. |
filter | Tùy chọn. Giá trị chuỗi, chứa biểu thức chọn được sử dụng để khớp phần tử. |
Giải thích chi tiết
Nếu cung cấp một đối tượng jQuery đại diện cho bộ sưu tập phần tử DOM, phương pháp .parentsUntil() cho phép chúng ta tìm kiếm các phần tử tổ tiên của các phần tử này trong cây DOM, cho đến khi gặp phần tử khớp với biểu thức chọn (được truyền vào phương pháp). Đối tượng jQuery được trả về chứa tất cả các phần tử tổ tiên, nhưng không bao gồm phần tử khớp với biểu thức chọn do phương pháp .parentsUntil() quy định.
Nếu không khớp hoặc không áp dụng biểu thức chọn, sẽ chọn tất cả các phần tử tổ tiên; trong trường hợp này, các phần tử được phương pháp chọn sẽ giống hệt với .parents() khi không cung cấp biểu thức chọn.
Đối với jQuery 1.6, các nút DOM hoặc đối tượng jQuery có thể được sử dụng làm tham số đầu tiên của phương pháp .parentsUntil(), thay vì biểu thức chọn.
Phương pháp này chấp nhận biểu thức chọn tùy chọn làm tham số thứ hai. Nếu áp dụng tham số này, sẽ lọc các phần tử thông qua việc kiểm tra phần tử có khớp với biểu thức chọn này hay không.