jQuery วนลูป - วิธี not()
ตัวอย่าง
ลบปารากราฟที่มี id ว่า "selected" ออกจากชุดที่มีทุกปารากราฟ:
$("p").not("#selected")
คำนิยามและวิธีใช้
not() ลบออกสมาชิกจากชุดที่สนับสนุน.
รูปแบบภาษา 1
.not(selector)
ประกาศ | รายละเอียด |
---|---|
selector | ค่าข้อความ ประกอบด้วยการแสดงเลือกตัวแทนที่ใช้ตรวจสอบองค์ประกอบ |
รูปแบบภาษา 2
.not(element)
ประกาศ | รายละเอียด |
---|---|
element | หนึ่งหรือหลายตัวแทน DOM ที่ต้องการลบจากชุดตัวแทนที่ตรงกับ |
รูปแบบภาษา 3
.not(function(index))
ประกาศ | รายละเอียด |
---|---|
function(index) | ฟังก์ชันที่ใช้ตรวจสอบแต่ละองค์ประกอบของชุด; this คือองค์ประกอบ DOM ในตอนนี้ |
รายละเอียด
ถ้ามี jQuery วิธีที่แสดงว่าเป็นชุดองค์ประกอบ DOM วิธี .not() จะสร้าง jQuery วิธีใหม่ด้วยชุดตัวแทนที่ตรงกับองค์ประกอบที่ตรงกับเลือกตัวแทน; ตัวแทนที่ไม่ตรงกับเลือกตัวแทนจะถูกทำให้เข้าไปในผลลัพธ์
คิดฟิจน์เพื่อหน้านี้ที่มีรายการที่เรียบง่าย:
<ul> <li>รายการที่ 1</li> <li>รายการที่ 2</li> <li>รายการที่ 3</li> <li>รายการที่ 4</li> <li>รายการที่ 5</li> </ul>
เราสามารถใช้วิธีนี้สำหรับชุดองค์ประกอบรายการ:
$('li').not(':even').css('background-color', 'red');
ผลลัพธ์ของการเรียกใช้ครั้งนี้จะทำให้องค์ประกอบ 2 และ 4 มีพื้นหลังสีแดง เพราะมันไม่ตรงกับเลือกตัวแทน (จำแนกความรู้สึกด้วย:even และ :odd ใช้ตัวเลขที่เริ่มต้นที่ 0)
ลบองค์ประกอบเฉพาะ
เวอร์ชันที่สองของวิธี .not() อนุญาตให้เราลบองค์ประกอบจากชุดตัวแทน ซึ่งเป็นการหาองค์ประกอบดังกล่าวด้วยวิธีอื่นๆ ก่อนหน้านี้
<ul> <li>รายการที่ 1</li> <li>รายการที่ 2</li> <li id="notli">รายการที่ 3</li> <li>รายการที่ 4</li> <li>รายการที่ 5</li> </ul>
เราสามารถใช้ฟังก์ชัน JavaScript โครงสร้าง getElementById() อ่านองค์ประกอบรายการที่สาม และลบมันออกจากองค์ประกอบ jQuery:
$('li').not(document.getElementById('notli')).css('background-color', 'red');
ประโยคนี้เปลี่ยนสีพื้นหลังขององค์ประกอบ 1, 2, 3 และ 5 สีเทา สามารถทำได้ด้วย jQuery แสดงเชิงรวมที่เรียบง่าย แต่เทคนิคนี้มีประโยชน์มากเมื่อเทียบกับคลาสเดียวกับที่ให้ความสำคัญกับองค์ประกอบ DOM แบบเดียว
สำหรับ jQuery 1.4 วิธี .not() สามารถใช้ฟังก์ชันเป็นตัวอุปกรณ์ เช่นเดียวกับ .filter() ฟังก์ชันที่กลับค่า true จะหากเอาออกจากชุดตัวแทนที่ถูกกรอง; ชุดอื่นทั้งหมดจะถูกทำให้เข้าไปด้วย