-- 作者:小鞋子
-- 发布时间:3/22/2004 9:56:00 PM
-- FLASH+XML专题[一]FLASH调用XML数据
1....============FLASH调用XML数据========== 一、建立XML对象: var myXML = new XML(); 二、引用XML文件: myXML.load("data.xml"); 三、忽略空格: myXML.ignoreWhite = true;//默认的为false 四、处理XML对象的函数: myXML.onLoad = function(success) { statements; } 五、data.XML文件的内容: <data1 name="imagebear"> <data2 name="mariger"> xiaoshandong </data2> <data3 name="mariger3"> xiaoshandong3 </data3> </data1> 六、返回值实例 1、myXML.childNodes[0]将返回: <data1 name="imagebear"> <data2 name="mariger"> xiaoshandong </data2> <data3 name="mariger3"> xiaoshandong3 </data3> </data1> 2、myXML.childNodes[0].nodeName将返回: data1 3、myXML.childNodes[0].childNodes[0].name将返回: imagebear 4、myXML.childNodes[0].childNodes[0]将返回: <data2 name="mariger"> xiaoshandong </data2> 5、myXML.childNodes[0].childNodes[0].nodeName将返回: data2 6、myXML.childNodes[0].childNodes[1].attributes.name将返回: mariger3 7、myXML.childNodes[0].childNodes[0].childNodes[0].nodeValue将返回: xiaoshandong 8、var myName = myXML.firstChild.firstChild; trace(myName.nodeName);将输出data2 myName = myName.nextSibling; trace(myName.nodeName);将输出data3childNodes[0]等价于firstChild 七、附:测试用的代码,XML文件如楼上所示 var myXML = new XML(); myXML.load("data.xml"); myXML.ignoreWhite = true; myXML.onLoad = function(success) { if(success) { //myArray = myXML.childNodes[0]; //trace(myArray.attributes.name); //trace(myXML.childNodes[0].childNodes[1].firstChild.nodeValue); //trace(myXML.firstChild); //trace(myXML.childNodes[0].nodeName); //trace(myXML.firstChild.attributes.name); //trace(myXML.childNodes[0].childNodes[1].nodeName); //trace(myXML.childNodes[0].childNodes[1].attributes.name); //trace(myXML.firstChild.firstChild); //trace(myXML.firstChild.firstChild.nodeName); //trace(myXML.firstChild.firstChild.attributes.name); //trace(myXML.childNodes[0].childNodes[0].childNodes[0].nodeValue); var myName = myXML.firstChild.firstChild; trace(myName.nodeName); myName = myName.nextSibling; trace(myName.nodeName); } }
|