我有这段代码:

  <textarea id="test" style="width: 400px; height: 100px"></textarea>
  <script>
    var inserting = document.createElement("div");
    document.insertBefore(inserting,document.getElementById("test"));
  </script>

哪个应该在 DIV id=inserting 之前插入 textarea id=test ,但是出现这个错误
Node was not found" code: "8

我在 WinXP 上使用 FireFox 3.6 和 Firebug。问题出在哪儿?

最佳答案

insertBefore 需要调用之前插入的元素的父元素:

<textarea id="test" style="width: 400px; height: 100px"></textarea>
  <script>
    var inserting = document.createElement("div");
    var insertAt = document.getElementById("test");
    insertAt.parentNode.insertBefore(inserting,insertAt);
  </script>

关于javascript - document.insertBefore引发错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4043327/

10-17 01:30