使用javascript将div插入dom?

时间:2012-10-12 12:10:33

标签: javascript dom

我试图将一个新的div插入到ID为“app”

的DOM中
var new_div = document.createElement("div");
var app_div = document.getElementById("app");
document.body.insertBefore(new_div, app_div);​

这在控制台中出现错误:

  

未捕获的TypeError:无法调用null

的方法'insertBefore'

但我不知道为什么?

3 个答案:

答案 0 :(得分:1)

您需要将代码包装到window.onload处理程序:

window.onload = function() {
    var new_div = document.createElement("div");
    var app_div = document.getElementById("app");
    document.body.insertBefore(new_div, app_div);
}

jsFiddle上的示例。

答案 1 :(得分:0)

除非按照Igor的建议将其更好地包装在onload()中,否则你不想先将new_div添加到文档中吗?

document.body.insertBefore(new_div, document.body.firstChild);

答案 2 :(得分:-1)

尝试使用jquery document.ready event