与div元素一起使用时,未定义appendChild方法

Raf*_*del 2 javascript dom append

我真的是Javascript的初学者,并试图在这个HTML中pdiv元素中添加一个元素:

<!doctype html>
<html>
    <head>
    </head>

    <body>
        <p>This is paragraph 1.</p>
        <p>This is paragraph 2.</p>
        <p>This is paragraph 3.</p>
        <p>This is paragraph 4.</p>
        <div>
            <p id="foo">This is paragraph 5.</p>
        </div>
        <script type="text/javascript" src="script.js"></script>
    </body>

</html>
Run Code Online (Sandbox Code Playgroud)

使用此代码:

(function(){
    var divElement = document.getElementsByTagName("div");
        el = document.createElement("p");
        content = document.createTextNode("This is text");    
    el.appendChild(content);
    document.divElement.appendChild(el);        
}());
Run Code Online (Sandbox Code Playgroud)

但是我在第6行得到了这个错误:

未捕获的TypeError:无法调用未定义的方法'appendChild'

xan*_*ded 8

getElementsByTagName(" ... ") 返回元素集合.

var divElement = document.getElementsByTagName("div")[0];
Run Code Online (Sandbox Code Playgroud)

另外,改变:

document.divElement.appendChild(el); 
Run Code Online (Sandbox Code Playgroud)

至:

divElement.appendChild(el);
Run Code Online (Sandbox Code Playgroud)

  • @Rafael [getElementsByTagName()](https://developer.mozilla.org/en/DOM/document.getElementsByTagName) (2认同)