我遇到了一个问题,我希望编写一个可以显示内部div的所有div id的脚本,例如:
<body id="bd">
<div id="canvas">
<div id="nd1">
<div>
My text
</div>
</div>
<div id="nd2">
<div id="hd">Some Text</div>
<div>
<div>
我想要的是假设当我单击在"nd1"中没有定义 ID 的div 时,我应该得到它的父div(即 nd1)和最外层的父级,这是我想要的。
试试
var allChildNodes = document.querySelectorAll("#nd1 div");
nodes = Array.prototype.slice.call(allChildNodes ,0);
nodes.forEach(function(node){
node.addEventListener("click", function(){
console.log("Outer parent" + node.parentNode.outerHTML);
console.log("Outermost parent" + node.parentNode.parentNode.outerHTML);
});
});
获取父div 的数组
var allChildNodes = document.querySelectorAll("#nd1 div");
nodes = Array.prototype.slice.call(allChildNodes ,0);
nodes.forEach(function(node){
node.addEventListener("click", function(){
var parentDivs = [];
while( !node.parentNode )
{
parentDivs.push(node.parentNode);
node = node.parentNode;
}
console.log("parents" + parentDivs);
});
});
用于匹配从特定字符串开始的多个div
var allChildNodes = document.querySelectorAll("[id^='nd'] div");