- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
private function nodeCompare(searchNode:XML, findNode:XML):Boolean {
//trace(findNode.nodeName);
if(searchNode.localName() != findNode.localName()) {
//trace(searchNode.nodeName + "!=" + curnode);
return false;
}
if(findNode.namespace() != searchNode.namespace()) {
return false;
}
if(searchNode.text() && findNode.text() != searchNode.text()) {
return false;
}
for each(var attr:Object in searchNode.attributes) {
//trace ("**" + attr); // um, that's not helpful
}
var found:Boolean = false;
for each(var searchSub:XML in searchNode.children()) {
for each(var findSub:XML in findNode.children()) {
if(nodeCompare(searchSub, findSub)) {
found = true;
break;
}
}
if(!found) return false;
found = false;
}
//trace("match!");
return true;
}
Тот же источник. Явно задумка была реализовать по-новой XML.contains() метод, но не получилось :)
Комментарии (0) RSS
Добавить комментарий