ล่าสุดการพัฒนาเว็บบทเรียน
 

jQuery closest() Method

<วิธี jQuery traversing

ตัวอย่าง

กลับบรรพบุรุษแรกของ <span> ที่เป็น <ul> องค์ประกอบ:

$(document).ready(function(){
    $("span").closest("ul").css({"color": "red", "border": "2px solid red"});
});

ผล:

body (great-great-grandparent)
div (great-grandparent)
    ul (second ancestor - second grandparent)
      ul (first ancestor - first grandparent)
    • li (direct parent)  span  
     
ลองตัวเอง»

ความหมายและการใช้งาน

closest() วิธีการส่งกลับบรรพบุรุษแรกขององค์ประกอบที่เลือก

บรรพบุรุษเป็นพ่อแม่ปู่ย่าตายายปู่ย่าตายายที่ดีและอื่น ๆ

ต้นไม้ DOM: วิธีการนี้สำรวจขึ้นมาจากองค์ประกอบปัจจุบันทุกทางถึงองค์ประกอบหลักของเอกสาร (<html>) เพื่อหาบรรพบุรุษแรกขององค์ประกอบ DOM

วิธีนี้เป็นวิธีที่คล้ายกับ parents() ในการที่พวกเขาทั้งสองสำรวจขึ้นต้นไม้ DOM ความแตกต่างที่มีรายละเอียดดังนี้

closest()

  • เริ่มต้นด้วยองค์ประกอบปัจจุบัน
  • เดินทางขึ้นไปบนต้นไม้ DOM และส่งกลับคนแรกที่บรรพบุรุษ (เดี่ยว) ที่ตรงกับการแสดงออกผ่าน
  • วัตถุ jQuery กลับมีศูนย์หรือองค์ประกอบหนึ่ง

parents()

  • เริ่มต้นด้วยองค์ประกอบหลัก
  • เดินทางขึ้นไปบนต้นไม้ DOM และส่งกลับบรรพบุรุษทั้งหมดที่ตรงกับการแสดงออกผ่าน
  • วัตถุ jQuery กลับมีศูนย์หรือมากกว่าหนึ่งองค์ประกอบ

วิธีการอื่น ๆ ที่เกี่ยวข้อง:

  • parent() - ส่งกลับองค์ประกอบหลักโดยตรงขององค์ประกอบที่เลือก
  • parentsUntil() - ส่งกลับองค์ประกอบบรรพบุรุษทั้งหมดระหว่างสองอาร์กิวเมนต์ที่กำหนด

วากยสัมพันธ์

กลับบรรพบุรุษแรกขององค์ประกอบที่เลือก:

$(selector).closest( filter )

กลับบรรพบุรุษครั้งแรกที่ใช้บริบท DOM ที่จะมองขึ้นไปบนต้นไม้ DOM ภายใน:

$(selector).closest( filter,context )

พารามิเตอร์ ลักษณะ
filter จำเป็นต้องใช้ ระบุการแสดงออกเลือกองค์ประกอบหรือวัตถุ jQuery เพื่อ จำกัด การค้นหาของบรรพบุรุษ
context ไม่จำเป็น องค์ประกอบ DOM ภายในซึ่งเป็นองค์ประกอบที่ตรงกันอาจจะพบว่า

ลองตัวเอง - ตัวอย่าง

กลับบรรพบุรุษแรกของ <span> ที่เป็น <span> องค์ประกอบ
เพราะวิธีนี้เริ่มต้นด้วยองค์ประกอบปัจจุบันการค้นหาสำหรับครั้งแรก <span> ของ <span> จะกลับ <span>

ผ่านในองค์ประกอบ DOM เป็นบริบทภายในที่จะค้นหาองค์ประกอบบรรพบุรุษแรก
โดยใช้พารามิเตอร์ทั้งสองที่จะผ่านในองค์ประกอบ DOM เป็นบริบทภายในที่จะค้นหาแรก <ul> องค์ประกอบ


<วิธี jQuery traversing