การจัดการ DOM ด้วย jQuery - 2
การจัดการ DOM ด้วย jQuery - 2
การจัดการ DOM ด้วย jQuery - 2 เป็นบทเรียน jQuery Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 1 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน jQuery Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส jQuery Academy มีบทเรียนทั้งหมด 1 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
บทนำและ append
สวัสดีครับ/ค่ะ
จากตัวอย่างที่ผ่านมา เราได้ดำเนินการอัปเดตหรืออ่านออบเจ็กต์ HTML DOM
เราจะเรียนรู้การแทรกข้อมูลด้วยเมธอด append()
มาดูตัวอย่างกันครับ/ค่ะ
<button id="add">
Add New Item
</button>
<div id="target"></div>
<script>
/*
Listen for an element with
the add id click
*/
$('#add').click(function(){
/*
append '<p>This is the appended
text</p>' to #target element
*/
$("#target").append("<p>Appended text</p>");
})
</script>append
หลังจากเรียกใช้โค้ดด้านบนแล้ว เมธอด append จะเพิ่มโค้ด HTML (ที่ส่งเป็นอาร์กิวเมนต์) ไว้ที่ ส่วนท้ายขององค์ประกอบ #test
prepend
เมธอด prepend()
เมธอด prepend() เป็นเมธอดที่ทำงานตรงข้ามกับ append() โดย เมธอด append() จะเพิ่มข้อมูลไว้ที่ส่วนท้ายของเนื้อหาในองค์ประกอบเป้าหมาย ขณะที่ prepend จะเพิ่มข้อมูลไว้ที่จุดเริ่มต้น
<div id="target"></div>
<button id="add">
Add New Item
</button>
<script>
/*
Listen for an element
with the add id click
*/
$('#add').click(function(){
/* append '<p>This is the prepended text</p>'
to #target element
*/
$("#target").prepend("<p>This is the appended text</p>");
})
</script>คำถาม
ด้วยเมธอด append และ prepend เราสามารถเพิ่มองค์ประกอบ HTML ใหม่ที่ส่วนท้ายและส่วนต้นขององค์ประกอบเป้าหมายได้
แล้วถ้าเราต้องการเพิ่มองค์ประกอบใหม่ให้เป็นองค์ประกอบพี่น้องขององค์ประกอบเป้าหมาย เราจะทำอย่างไร
ตัวอย่าง
มาต่อจากตัวอย่างก่อนหน้านี้กัน
โหนด HTML ของเราในกรณีแรกเป็นดังนี้
<div id="test">
<p>initial paragraph</p>
</div>เมธอด after - before
เมธอด after() และ before()
เราสามารถเพิ่มองค์ประกอบ HTMLก่อนและหลังองค์ประกอบเป้าหมายได้ด้วยเมธอด after() และ before()
ในโค้ดตัวอย่างด้านล่าง มีการเพิ่มองค์ประกอบใหม่ลงในองค์ประกอบที่มี id เป็น #test ทั้งก่อนหน้าและถัดจากองค์ประกอบนั้นทันทีในลำดับขององค์ประกอบพี่น้อง
<div id="test">
<p>initial paragraph</p>
</div>
<script>
$('#test').before('<p>I am before the #test element</p>');
$('#test').after('<p>I am after the #test element</p>');
</script>
การแทรกหลายรายการ
จนถึงตอนนี้ เราได้เห็นเมธอด prepend(), append(), before() และ after() แล้ว แต่ผม/ดิฉันลืมอธิบายหัวข้อหนึ่งไป ขออภัยครับ/ค่ะ บางครั้งผม/ดิฉันก็ขี้ลืมเหมือนกัน 😇
แล้วถ้าเราต้องการเพิ่มโหนดมากกว่าหนึ่งโหนดพร้อมกัน เราควรทำอย่างไร
ดังเช่นในตัวอย่างด้านล่าง
เราสามารถเพิ่มโหนดมากกว่าหนึ่งโหนดพร้อมกันได้ โดยส่งอาร์กิวเมนต์มากกว่าหนึ่งรายการให้กับเมธอดที่เกี่ยวข้อง
<p>
<span id="target"></span>
</p>
<script>
var firstNode = '<p id="first-node">First node</p>';
var secondNode = '<p id="first-node">Second node</p>';
var thirdNode = '<p id="first-node">Third node</p>';
/*
The following four methods work
with the same logic and take
more than one argument.
*/
$('#target').before(firstNode, secondNode, thirdNode);
$('#target').after(firstNode, secondNode, thirdNode);
$('#target').append(firstNode, secondNode, thirdNode);
$('#target').prepend(firstNode, secondNode, thirdNode);
</script>ตัวอย่างการเชื่อมเมธอด
ในตัวอย่างด้านบน มีการเพิ่มโหนดมากกว่าหนึ่งโหนดพร้อมกัน อย่างที่เห็น ไวยากรณ์จะเหมือนเดิม แม้ว่าโหนดเหล่านั้นจะอยู่ในเมธอดที่แตกต่างกัน
นอกจากนี้ เรายังสามารถเขียนโค้ดใน jQuery โดยปรับเปลี่ยนได้
ด้วยวิธีนี้ เราจะเขียนโค้ดได้สั้นลงและมีประสิทธิภาพมากขึ้น
มาดูตัวอย่างและเรียนรู้วิธีเขียนโค้ดแบบเชื่อมต่อใน jQuery กันครับ/ค่ะ
<p id="test"></p>
<script>
var firstNode = '<p id="first-node">First node</p>';
var secondNode = '<p id="first-node">Second node</p>';
var thirdNode = '<p id="first-node">Third node</p>';
/*
We made our code shorter.
Also, we have done the select operation
on the DOM only once instead of twice.
*/
$('#test').before(firstNode, secondNode, thirdNode)
.after(firstNode, secondNode, thirdNode);
</script>เมธอด wrap
เมธอด wrap()
หากต้องการนำองค์ประกอบ HTML ไปไว้ในคอนเทนเนอร์อื่น เราจะใช้เมธอดใด
แน่นอนว่าใช้เมธอด wrap()
ตัวอย่างต่อไปนี้แสดงการใช้เมธอด wrap แบบง่าย ๆ
<div id="target"></div>
<script>
/*
When we apply the code below.
The node we assigned as an argument
will come around our target element.
*/
$("#target").wrap('<div class="container">Container wrapped the target element</div>');
//The result will be as follows
/*
<div class="container">
Container wrapper the target element
<div id="target">
</div>
</div>
*/
</script>
Question
เมธอด unwrap
เมธอด unwrap()
เรามีเมธอดที่ทำงานตรงข้ามกับเมธอด wrap() ด้วยเมธอด unwrap() เราสามารถลบองค์ประกอบแม่ขององค์ประกอบเป้าหมายได้
const $ = (selector) => ({
unwrap: () => console.log(`Unwrapped ${selector}`)
});
$("#target").unwrap();เมธอด empty
เมธอด empty()
มาดูการลบองค์ประกอบ HTML กัน
ด้วยเมธอด empty() เราสามารถลบองค์ประกอบลูกและองค์ประกอบที่สืบทอดทั้งหมดขององค์ประกอบเป้าหมายได้
// Removes all descendants of the element from the DOM.
// (Simulated for Node.js environment)
const $ = (selector) => ({
empty: () => console.log(`Removed all descendants of ${selector}`)
});
$("#target").empty();เมธอด remove()
เมธอด remove()
เมธอด remove() จะลบทั้งองค์ประกอบเป้าหมายและองค์ประกอบที่สืบทอดของมันออกจาก DOM
/*
Removes the element and
all descendants of the element from the DOM.
*/
$('#target').remove();ขอแสดงความยินดี
ขอแสดงความยินดี 🎉
เราได้เรียนรู้การจัดการ DOM แล้ว
ในส่วนถัดไป เราจะเรียนรู้การจัดรูปแบบด้วย JQuery

คำถามที่พบบ่อย
บทเรียน “การจัดการ DOM ด้วย jQuery - 2” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การจัดการ DOM ด้วย jQuery - 2” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส jQuery Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส jQuery Academy มีบทเรียนทั้งหมด 1 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การจัดการ DOM ด้วย jQuery - 2”
การจัดการ DOM ด้วย jQuery - 2 คุณปฏิบัติ jQuery Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน jQuery Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน jQuery Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 1 บทเรียน
บทเรียน “การจัดการ DOM ด้วย jQuery - 2” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน jQuery Academy นี้ได้ไหม
ได้ บทเรียน jQuery Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ