use*_*218 3 html javascript object
如何在选择器上正确循环从"getElementsByTagName()"返回的对象.我似乎无法做对.
例如,如果我有一堆像这样的div:
<div class="wrapper">
<div class="test1">this is a div</div>
<div class="test2">this is a div</div>
<div class="test1">this is a div</div>
<div class="test2">this is a div</div>
<div class="test1">this is a div</div>
<div class="test2">this is a div</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想循环遍历"getElementsByTagName()"的结果,如下所示:
var wrapper = document.querySelector(".wrapper");
var divs = wrapper.getElementsByTagName("div");
for (i = 0; i < divs.length; ++i) {
each = divs[i];
if (each.classList.contains("test2")) {
this.style.display = "none";
}
}
Run Code Online (Sandbox Code Playgroud)
这是一个小提琴:http://jsfiddle.net/Y2Yzv/1/
您在控制台中出错: Uncaught TypeError: Cannot set property 'display' of undefined
尝试:
var wrapper = document.querySelector(".wrapper");
var divs = wrapper.getElementsByTagName("div");
for (i = 0; i < divs.length; ++i) {
each = divs[i];
if (each.classList.contains("test2")) {
each.style.display = "none";
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1309 次 |
| 最近记录: |