-6

我从几天开始就在使用 javascript。我在 getElementById 和 createElement 之间感到困惑。

提前致谢

4

2 回答 2

4

他们是两个不同的东西

getElementById使用 DOM 中存在的 id 选择元素

createElement创建一个可以插入 DOM 的新元素

于 2012-07-24T05:25:38.070 回答
3

主要区别在于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>
于 2012-07-24T05:35:44.503 回答