我的示例代码:
<!DOCTYPE html>
<html>
<body>
<div class="names">
<i>Name 1.</i>
</div>
<div class="names">
<i>Name 2.</i>
</div>
<div class="names">
<i>Name 3.</i>
</div>
<input type="button" value="Change all names" onclick="changeNames()" />
<script>
var changeNames = function() {
var names = document.getElementsByClassName('names');
for (var i = 0; i < names.length; i++) {
names.item(i).textContent = names.item(i).textContent + ' Changed...'
}
}
</script>
</body>
</html>
我的问题是:如何获得 <i>
类名里面的标签?
names.item(i).textContent
不包括 <i>
标签。
我试过了,但没有用:names.item(i).find('i').textContent
和names.item(i)
不支持 .innerHTML
,也是。
最佳答案
使用 Element.querySelector()
在 div 中获取 i
标签。
var changeNames = function() {
var names = document.getElementsByClassName('names');
for (var i = 0; i < names.length; i++) {
names.item(i).querySelector('i').textContent += ' Changed...'
// or
// names[i].querySelector('i').textContent += ' Changed...'
}
}
<div class="names">
<i>Name 1.</i>
</div>
<div class="names">
<i>Name 2.</i>
</div>
<div class="names">
<i>Name 3.</i>
</div>
<input type="button" value="Change all names" onclick="changeNames()" />
关于javascript - 循环 getElementsByClassName() 后获取 innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33429647/