[轉貼][jQuery] .parent() 與 .parents() 與 .closest() 的差異

<div class="selected">
123
<div class="selected">
<div>
Hello Again
</div>
</div>
</div>

如果是 .parent()
$(“p”).parent(“.selected”).css(“background”, “yellow”);
會發現 沒有變色

如果是 .closest()
$(“p”).closest(“.selected”).css(“background”, “yellow”);
會發現 123 沒有變色 但 Hello Again 變色了

如果是 .parents()
$(“p”).parents(“.selected”).css(“background”, “yellow”);
會發現 123 跟 Hello Again 都變色了

結論:
parent() 只往上查找一層
closest() 往上查找 只要找到符合條件的 就停止
parents() 往上查找 不停止 找出所有符合條件的

用 w3 官網案例程式來看:連結改成這樣就知道差異了  123            Hello Again      如果是 .parent()$(“p”).parent(“.selected”).css(“background”, “yellow”);會發現 沒有變色如果是 .closest()$(“p”).closest(“.selected”).css(“background”, “yellow”);會發現 123 沒有變色 但 Hello Again 變色了如果是 .parents()$(“p”).parents(“.selected”).css(“background”, “yellow”);會發現 123 跟 Hello Again 都變色了結論:parent() 只往上查找一層closest() 往上查找 只要找到符合條件的 就停止parents() 往上查找 不停止 找出所有符合條件的

內容出處: 謝晒的PHP網頁設計: [jQuery] .parent() 與 .parents() 與 .closest() 的差異

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *