2
我有這樣的方法,通過所有節點循環:遍歷所有的DOM元素,包括添加的元素
public function processNode(DOMNode $element){
if($element instanceof DOMElement){
foreach($element->childNodes as $node){
// Adds child nodes and/or modifies the current node
$this->editNode($node);
if($node->hasChildNodes()){
$this->processNode($node);
}
}
}
}
但是,我認爲,當節點在editNode()
方法中添加的,這不接他們,處理這些節點。
有沒有更好的方式讓我遍歷所有節點,包括已經通過editNode()
添加的節點?
如果您能夠將某些節點作爲傳遞到editNode的'$ node'的兄弟節點預先加入/追加一些節點,即使使用'childNodes'的'liveliness'也不會解決。是否有可能重新組織您的代碼,所以不會引入這樣的更改? – raina77ow
可能不是,因爲我添加了一個名爲'repeat'的屬性,它看起來像這個'