预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

简单明了的flash+xml教程 分类:flash/xml在FLASH中,使用XML接口获取外部数据是最有效的方法之一.(通常还有WebSerivce接口和LoadVars方法)下面来看一个简单的XML文档(city.xml)这个文档描述的是城市地区的信息xmlversion="1.0"encoding="gb2312"?><root><cityname="上海"code="021"pnum="500000"/><cityname="北京"code="010"pnum="600000"/><cityname="浙江"code="057"pnum="1000000"/>root>简单介绍一下XML文档格式的书写规范:第一行:这是一个XML文档的描述信息.其中定义了该XML文档的一些基本属性,包括:版本信息(version),使用的字符编码(encoding).第二行:(虽然在FLASH中我们用不到节点的任何属性,但是合式的XML文档必须要求一个根节点)在XML文档中,这是一个根节点.XML规定所有标签必须有闭合.所以,在最后一行使用对应的标签来闭合.同样,单行的XML节点也需要闭合,例如:其中"/"符号就表示单行的节点闭合."name","code","pnum"是节点的属性,写法就是:属性名="属性值"这样的名/值对.至于节点名和属性名都是可以自定义的,也就是说可以任意命名.但是还是建议要尽量规范""节点是""的子节点,相应的""叫做""的父节点在这个XML文档中有3个子节点,我们数据就存储在这3个子节点的属性中,分别有:城市名称(name),城市代码(code),城市人口数目(pnum)我们要做的最终目的就是在FLASH中获取这些节点的属性值下面来看一个FLASH调用XML的实例System.useCodepage=true;vardoc:XML=newXML();doc.load("city.xml");doc.ignoreWhite=true;doc.onLoad=function(success){if(success){trace(doc.childNodes[0].childNodes[0].attributes.name);trace(doc.childNodes[0].childNodes[1].attributes.name);trace(doc.childNodes[0].childNodes[2].attributes.name);}}分析:System.useCodepage=true;如果在XML文档中使用了中文编码,例如"gb2312".那么在FLASH中必须启用使用页面编码的指令.vardoc:XML=newXML();建立一个XML实例.赋予"doc"这个对象.doc.load("city.xml");"load()"-XML对象的一个方法:加载XML数据到"doc"这个对象当中.提供XML数据的方式并不是限制于.xml的文件,任何符合XML书写格式的文档都可以,通常,我们是使用程序来提供XML数据的,例如"http://www.51ww.com/city.aspx?country=china"doc.ignoreWhite=true;"ignoreWhite"-XML对象的一个属性:指定XML文档忽略空白,因为在XML中一个换行在FLASH中会被视为一个节点doc.onLoad=function(success){}"onLoad"-XML对象的一个方法.将会返回一个布尔值"true或false".用来判断XML是否被成功加载.如果加载成功则会返回"true",反之则返回"false"此处为该方法使用了一个函数,其参数"success"用来贮存上述的布尔值if(success){}一个判断语句:如果加载成功(即success的值为"true"),则触发括号内的动作trace(doc.childNodes[0].childNodes[0].attributes.name);输出doc(此时"city.xml"中的数据已经包含到doc这个XML对象当中)这个XML对象的第一个节点下的第一个子节点的"name"属性值childNodes-XML对象的一个属性,它的值的类型是数组型.XML的一个节点可以在FLASH中通过这个属性来表示其包含的数据.由于FLASH中数组的长度计算是由"0"开始,所以我们XML文档中的第一个节点就存储在数组的"0"位置.而不是"1"所以,我们取出XML文档的第一个节点-"",就应该表示成这样"childNodes[0]"同样,我们取出XML对象根节点("")下的第一个子节点(""),就表示成doc.childNodes[0].childNodes[0]相应的,取出第二个