我目前在javascript中使用document.getElementsByClassName方法获得了一个nodelist。然后我检查第一个节点是否有子节点,如果没有,我会返回带有节点ID的document.getElementById。我不确定如何从节点列表中获取ID。
var columns = document.getElementsByClassName('.col-md-4.column');
if (countChildren(columns[0].childNodes) == 0) {
return document.getElementById(columns[0].) //not sure what goes here
}
答案 0 :(得分:1)
如果你有一个DOM节点,它有一个id
属性,你不能使用getElementById
获取该属性
var columns = document.querySelectorAll('.col-md-4.column');
if ( countChildren(columns[0].childNodes) == 0 ) {
return columns[0].id;
}
请注意,getElementsByClassName
会在不使用句点的情况下使用这些类,但为了获得更好的支持,您也可以使用querySelectorAll
答案 1 :(得分:1)
毫不奇怪,它是.id
:
return document.getElementById(columns[0].id);
但更重要的是,您已经拥有对节点的引用 - 不要为它查询DOM:
return columns[0];