不能使用 innerhtml 或选择节点,返回 null



经过几个小时的搜索,我还没有找到解决这个问题的方法。 每次我运行此代码时:

var output = document.getElementsByTagName('div');
var array = [];
for(var x = 0; x < output.length; x++){
    array.push(output[i])
    };
console.log(array);

我在控制台中得到的只是:

[];

我试图做的只是操纵其中一个节点(具体为节点#4)的内部html。我也试过这个:

var output = document.getElementsByTagName('div')[4];
output.innerHTML='hello world';

它只是返回:Uncaught TypeError: Cannot set property 'innerHTML' of undefined .任何帮助将不胜感激。

我还应该提到,使用 querySelectorgetElementById 并针对特定的div 仅返回 null。

> 你要踢自己。

在你的 for 循环中,你定义 x 作为迭代器,但你使用的是 output[i]。 我还没有被定义。使用输出[x]。

此外,要获取第四个元素,您需要索引为 3 的元素。由于索引从零开始,因此第一个元素将为 0。第四个是3。

相关内容

  • 没有找到相关文章

最新更新