[AS3]as3.0操作xml详细分析原代码示例(3)
XML的高级操作
常用的操作上面已经介绍的很清楚了。高级操作则是留给对XML应用更深的兄弟们。
几点注意:
1.在AS3.0中, XML类的ignoreWhitespace默认为true。
2.AS3.0支持对comments的直接操作。但默认:
- XML.ignoreComments = false;
- var kingdaXML:XML =
- <item>
- <!-- comment 1-->
- <!-- comment 2-->
- </item>;
- trace(kingdaXML.toXMLString()); //默认为true时,不会显示comment的
访问comment用
trace(kingdaXML.comments()[1].toXMLString());
3.XML支持克隆。
使用copy()可以得到一份现有XML的值拷贝。
var kingdaCopy:XML = kingdaXML.copy();
对kingdaCopy操作就不会影响kingdaXML对象了。
4.极有用的descendants函数返回一个XMLList对象,包括所有的子节点。
设ignoreComments = false;和ignoreProcessingInstructions = false后,连comments和process instructions也会包含在这个XMLList对象中。
运用示例如下:
- XML.ignoreComments = false;
- var xml:XML =
- <body>
- <!-- comment -->
- text1
- <a>
- <b>text2</b>
- </a>
- </body>;
- trace(xml.descendants("*").length()); // 5
- trace(xml.descendants("*")[0]); // // <!-- comment -->
- trace(xml.descendants("*")[1].toXMLString()); // text1
- trace(xml.descendants("a").toXMLString()); // <a><b>text2</b></a>
- trace(xml.descendants("b").toXMLString()); // <b>text2</b>
还有太多的XML有用操作功能了(如对namespace的操作)。用到时再去翻参考书吧。
以上的介绍可以满足绝大部分运用了。
对了AS2.0已有的XML类,在3.0中变成了XMLDocument类,使用方法不变。便于AS2.0程序移植。其余不推荐。
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例