Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取类内的标记名元素_Javascript_Html_Tagname - Fatal编程技术网

Javascript 获取类内的标记名元素

Javascript 获取类内的标记名元素,javascript,html,tagname,Javascript,Html,Tagname,我想在类中获取a的元素并对其进行更改 我的HTML是: <div class="alignleft"> <a href="http://cismdomain.com/articles/page/2/">« Older Entries</a> </div> 但这给了我未定义的文档。getElementsByTagName返回一个HTML集合。因此,您需要迭代它(在您的情况下,它将是第一个条目) var oldentries=document

我想在类中获取
a
的元素并对其进行更改

我的HTML是:

<div class="alignleft">
    <a href="http://cismdomain.com/articles/page/2/">« Older Entries</a>
</div>

但这给了我
未定义的
文档。getElementsByTagName
返回一个HTML集合。因此,您需要迭代它(在您的情况下,它将是第一个条目)

var oldentries=document.querySelector('.alignleft');
var ainside=document.getElementsByTagName('a');

对于(i=0;i您可以通过使用更精确的选择器来使用对querySelector的单次调用来查找您的元素:直接使用
。左对齐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";

您需要更新
元素的
textContent
属性

工作示例:

var linkElement=document.querySelector('.alignleft a');
linkElement.textContent='Previous';

旧条目
一旦使用获取类为
'的元素。alignleft'
您还可以执行
oldentries.querySelector('a');
获取
oldentries
中的
'a'
元素,然后更改:

var oldentries=document.querySelector('.alignleft'),
ainside=oldentries.querySelector('a');
ainside.innerHTML='Previous';

虽然此代码可以回答问题,但提供有关此代码回答问题的原因和/或方式的其他上下文可以提高其长期价值。
document.querySelector('.alignleft').document.getElementsByTagName('a').innerHTML = "Previous";
var ainside = document.querySelector('.alignlef a'); // Select first occurance of a inside the first occurance of .alignleft in the document

ainside.innerHTML = "Previous";