我从几天开始就在使用 javascript。我在 getElementById 和 createElement 之间感到困惑。
提前致谢
他们是两个不同的东西
getElementById使用 DOM 中存在的 id 选择元素
但
createElement创建一个可以插入 DOM 的新元素
主要区别在于getElementById
它将通过其 ID 属性从 DOM 中获取一个元素,createElement
并将创建一个全新的 DOM 元素。
假设您有一个包含以下 HTML 的页面:
<!doctype html>
<html>
<head>
</head>
<body>
<div>Hello, World!</div>
<div id="message">What a nice day!</div>
</body>
</html>
然后你有一些像这样的 JavaScript 代码:
document.getElementById("message")
您将检索<div>
具有id
属性的元素"message"
。
现在,假设您想向 HTML 页面添加一个新元素,然后您将使用该createElement
函数。
var newEl = document.createElement("div")
当然,从示例中,我们还将新元素存储在名为 的变量中newEl
。
现在,要实际添加新元素,我们必须调用appendChild
任何 DOM 元素。为了简单起见,我们将简单地附加到<body>
标签。
document.body.appendChild(newEl)
现在,您的页面应该(至少在浏览器的脑海中)看起来像这样:
<!doctype html>
<html>
<head>
</head>
<body>
<div>Hello, World!</div>
<div id="message">What a nice day!</div>
<div></div>
</body>
</html>