如何获取 DOM 节点相对于 HTML 元素的深度?(即 HTML 标签作为子节点,而不是文本节点)。
例如 :
<div> // root node
here is my text node // but it wont be considered in level increment
<p> // level 1
<label> // level 2
here is another text node
</label>
</p>
</div>
这应该返回 2。
我已经尝试过了,但它不起作用:
function getDepth($node, $depth) {
foreach ($node->childNodes as $child):
if($child->nodeType === 1):
$depth++;
endif;
if ($node->childNodes):
getDepth($child, $depth);
endif;
endforeach;
return $depth;
}