javascript - 我无法使用 Javascript 中的 getElementsByClassName 方法访问 <div> 标记

标签 javascript html getelementsbyclassname

我是 Javascript 的新手,我正在尝试学习如何操作 DOM 中的元素。
所以我在 <body> 下有这个 HTML 代码标签:

<div class="content">
  <h1>Welcome</h1>
  <p>This is a sample website</p>
</div>
<script src="test.js"></script>

这是它的 JS 代码:

var contento = document.getElementsByClassName("content");
contento.getElementsByTagName("h1")[0].innerHTML = "Bienvenida";

到目前为止我尝试了什么:
在我的 HTML 代码中,我尝试将 div 的类属性更改为 id 属性,然后在我的 JS 代码中将 getElementsByClassName 更改为 getElementById。它就像一个魅力。但是我想知道为什么如果我使用类属性它不起作用?

是不是DIV标签不支持?
那为什么在这个例子中使用它:
http://www.w3schools.com/html/html_classes.asp

最佳答案

'getElementsByClassName' 就像'getElementsByTagName' 一样,所以它返回一个包含所有具有您指定的类的元素的数组

例如,您可能有三个具有该类的元素,因此根据您要定位的元素,您应该使用与其 DOM 顺序 -1 相对应的数组索引来定位它;)

给你:)

var contento = document.getElementsByClassName("content")[0];
contento.getElementsByTagName("h1")[0].innerHTML = "Bienvenida";

EDIT : Added code snippet 😊

var contento = document.getElementsByClassName("content")[0];
contento.getElementsByTagName("h1")[0].innerHTML = "Bienvenida";
<div class="content">
  <h1>Welcome</h1>
  <p>This is a sample website</p>
</div>

关于javascript - 我无法使用 Javascript 中的 getElementsByClassName 方法访问 <div> 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42181721/

相关文章:

javascript - Highchart 在动画事件后完全加载

javascript - 无法在函数外部获取 Javascript 中的输入值

html - 放大/缩小时如何避免标题甚至其他容器弄乱?

javascript - querySelectorAll 和 getElementsBy* 方法返回什么?

javascript - getElements 仅返回少数元素

javascript - 无法使用 Selenium Webdriver 遍历下拉列表

javascript - Jquery - 条件不起作用

html - 为当前页面提供 Active 类

javascript - 从 getElementsByClassName 中删除 [0]

javascript - 使用 Javascript 发出 post 请求