Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> HTML

เมธอด insertBefore() ใน HTML DOM

เมธอด insertBefore() ใช้แทรกโหนดใหม่ (newNode) เข้าไปก่อนโหนดลูก (child node) ที่มีอยู่แล้ว (existingNode)

ไวยากรณ์ (Syntax)

node.insertBefore(newNode, existingNode)

พารามิเตอร์

พารามิเตอร์คำอธิบาย
newNodeโหนดลูกใหม่ที่สร้างขึ้นซึ่งจะถูกแทรกเข้าไป
existingNodeโหนดลูกที่มีอยู่แล้วซึ่ง newNode จะถูกแทรกก่อนหน้า

ตัวอย่างการใช้งาน

ตัวอย่างด้านล่างเพิ่มขั้นตอน "Boil Water" ไปไว้ด้านบนสุดของรายการทำชา:

<!DOCTYPE html>
<html>
<head>
<title>insertBefore()</title>
<style>
  form { width: 70%; margin: 0 auto; text-align: center; }
  * { padding: 2px; margin: 5px; }
  input[type="button"] { border-radius: 10px; }
  ol { width: 30%; margin: 0 auto; }
</style>
</head>
<body>
<form>
  <fieldset>
    <legend>insertBefore()</legend>
    <h1>How to make tea</h1>
    <h3>Steps:</h3>
    <ol id="stepList">
      <li>Add Tea Bag</li>
      <li>Add Sugar</li>
      <li>Add Milk</li>
    </ol>
    <input type="button" onclick="addStep()" value="Add">
  </fieldset>
</form>
<script>
  function addStep() {
    var newIngredient = document.createElement("LI");
    var textnode = document.createTextNode("Boil Water");
    newIngredient.appendChild(textnode);
    var stepList = document.getElementById("stepList");
    stepList.insertBefore(newIngredient, stepList.childNodes[0]);
  }
</script>
</body>
</html>

ผลลัพธ์

ก่อนคลิกปุ่ม "Add": รายการคือ 1. Add Tea Bag, 2. Add Sugar, 3. Add Milk

หลังคลิกปุ่ม "Add": รายการกลายเป็น 1. Boil Water, 2. Add Tea Bag, 3. Add Sugar, 4. Add Milk

หมายเหตุ: รูปภาพตัวอย่างจากต้นฉบับไม่ได้รวมอยู่ในเนื้อหานี้