[英]Get the tagName element inside class
我想要得到的元素a
内部类,并改变它。
我的HTML是:
<div class="alignleft">
<a href="http://cismdomain.com/articles/page/2/">« Older Entries</a>
</div>
我想将Older Entries
更改为Previous
。
我的JavaScript代码是:
var oldentries = document.querySelector('.alignleft');
var ainside = document.getElementsByTagName('a');
oldentries.ainside.innerHTML = "Previous";
但这让我undefined
。
一旦你使用Document.querySelector()获取类'.alignleft'
的元素,你也可以做oldentries.querySelector('a');
获取oldentries
的'a'
元素,然后更改element.innerHTML :
var oldentries = document.querySelector('.alignleft'), ainside = oldentries.querySelector('a'); ainside.innerHTML = 'Previous';
<div class="alignleft"> <a href="http://cismdomain.com/articles/page/2/">« Older Entries</a> </div>
您需要更新<a>
元素的textContent
属性。
工作实例:
var linkElement = document.querySelector('.alignleft a'); linkElement.textContent = 'Previous';
<div class="alignleft"> <a>Older Entries</a> </div>
document.getElementsByTagName
返回HTML集合。 所以你需要迭代它(在你的情况下,它将是第一个条目)。
var oldentries = document.querySelector('.alignleft');
var ainside = document.getElementsByTagName('a');
for(i=0;i<ainside.length;i++) {
ainside[i].innerHTML = "Previous";
}
您可以使用更精确的选择器使用对querySelector的.alignLeft a
调用来查找元素:直接使用.alignLeft a
而不是两次。
此代码有效:
var entries = document.querySelector('.alignLeft a');
entries.innerHTML = "Previous"
你的代码会呈现出类似的东西
document.querySelector('.alignleft').document.getElementsByTagName('a').innerHTML = "Previous";
此外, getElementsByTagName('a')
将呈现一个数组,而不是一个可以应用.innerHTML
的对象。
var ainside = document.querySelector('.alignlef a'); // Select first occurance of a inside the first occurance of .alignleft in the document
ainside.innerHTML = "Previous";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.