JavaScript';未定义';getElementsByClassName的错误
我想得到某个div的子级,该div的类为“vid_div selected”。我得到了正确的div,如下所示:JavaScript';未定义';getElementsByClassName的错误,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想得到某个div的子级,该div的类为“vid_div selected”。我得到了正确的div,如下所示: var vid_div = document.getElementsByClassName('vid_div selected'); 但当我试图得到它的孩子时,它是未定义的: var vid = vid_div.children; //this returns undefined getElementsByClassName返回节点列表(节点集合)。您必须指定该集合的索引 var
var vid_div = document.getElementsByClassName('vid_div selected');
但当我试图得到它的孩子时,它是未定义的:
var vid = vid_div.children; //this returns undefined
getElementsByClassName
返回节点列表(节点集合)。您必须指定该集合的索引
var vid_div = document.getElementsByClassName('vid_div selected');
var vid = vid_div[0].children;
您看到此错误是因为GetElementsByCassName返回一个元素数组。另外,
vid_div
实际上不是节点的数组,而是节点列表。它的行为与数组
基本相同,但您无法在节点列表上执行映射
或forEach
等操作;您首先需要将其转换为数组
,通常是通过执行vid_div.slice(0)
。这是正确的。我也可以说它是集合而不是数组。我会为你编辑的,谢谢!现在开始工作(我是js新手…)