试图在HTML代码中注入动态年份。
getElementById可以很好地工作,但是getElementsByClassName似乎不起作用。
这是我的密码。
HTML
<p>this year is <span class="year"></span></p>
JAVASCRIPT
document.getElementsByClassName("year").innerHTML = new Date().getFullYear();
想知道我做错了什么。
发布于 2015-02-20 14:58:27
使用此方法可以得到一个元素数组。要访问第一个元素,请编写以下内容:
document.getElementsByClassName("year")[0].innerHTML = new Date().getFullYear();
发布于 2015-02-25 18:57:05
getElementsByClassName
函数返回一个HTMLCollection
对象。
可以使用与数组相同的语法访问集合中的每个元素:
var yearCollection = document.getElementsByClassName("year");
yearCollection[0].innerHTML = new Date().getFullYear();
还可以使用querySelector
和querySelectorAll
检索元素。
在我看来,使用querySelector的结果更具可读性:
document.querySelector(".year").innerHTML = new Date().getFullYear();
querySelector
和querySelectorAll
使用CSS选择器来获取DOM中的元素。
有关perf的快速比较,请参见:http://jsperf.com/selection-amdg2-azfne65
https://stackoverflow.com/questions/28631930
复制相似问题