3
想看看有趣的東西嗎?atom feed xmlns屬性混淆AS3的XML解析?
var xml:XML = XML(<feed><entry /><entry /><entry /></feed>);
trace(xml.entry.length()) // returns 3
有意義吧?現在讓我們添加這個屬性...
var xml:XML = XML(<feed xmlns="http://www.w3.org/2005/Atom"><entry /><entry /><entry /></feed>);
trace(xml.entry.length()) // returns 0
那麼這是不對的。讓我們用一個不同的屬性來嘗試它。
var xml:XML = XML(<feed test="okay"><entry /><entry /><entry /></feed>);
trace(xml.entry.length()) // returns 3
任何人都知道會導致這種情況嗎?我以atom爲例,但根節點上的任何'xmlns'屬性似乎都有這種效果。返回的值是虛直的 - 無論父母擁有哪些屬性,顯然還有3個'進入'子節點。
尼斯,顯然我們來到在同一時間相同的結論。不過,我會讓你有'接受的答案'。 –
另一件你可以做的快捷方式是 - var atom:Namespace = xml.namespace()//選擇默認的 trace(xml.atom :: entry.length()); ......這樣做的好處是,即使沒有定義名稱空間,它也可以工作,這非常酷。 –