document.insertBefore抛出错误

Jan*_*roň 4 javascript

我有这段代码:

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

哪个应该在DIV id=inserting之前插入textarea id=test,但是会发生此错误

Node was not found" code: "8
Run Code Online (Sandbox Code Playgroud)

我在WinXP上使用带Firebug的FireFox 3.6.问题出在哪儿?

RoT*_*oRa 10

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>
Run Code Online (Sandbox Code Playgroud)