
关于Flash AS3 XML:困惑ing……
我编写了如下外载XML的代码:varphoto:XML;varxmlpath:URLRequest=newURLRequest("photo/Piclist.xml");...
我编写了如下外载XML的代码:
var photo:XML;
var xmlpath:URLRequest = new URLRequest("photo/Piclist.xml");
var loadxml:URLLoader=new URLLoader();
loadxml.load(xmlpath);
loadxml.addEventListener(Event.COMPLETE,getxml);
function getxml(event:Event)
{
var loader:URLLoader = event.target as URLLoader;
if (loader != null)
{
photo = new XML(loader.data);
trace(photo+", "+photo.length);
trace(photo.pic.description);
}
}
这样是没有问题的,运行也是对的,但是如果在函数外面trace(photo)就不行了,这是为什么呢?我已经在函数外面声明photo为XML类的对象,应该属于全局变量的范畴,应且在函数里面对photo进行了赋值,为什么导函数外面trace的时候就会出问题呢?
以下为出问题后的结果:
TypeError: Error #1009: 无法访问空对象引用的属性或方法。
at XMLPhoto_fla::MainTimeline/frame1() 展开
var photo:XML;
var xmlpath:URLRequest = new URLRequest("photo/Piclist.xml");
var loadxml:URLLoader=new URLLoader();
loadxml.load(xmlpath);
loadxml.addEventListener(Event.COMPLETE,getxml);
function getxml(event:Event)
{
var loader:URLLoader = event.target as URLLoader;
if (loader != null)
{
photo = new XML(loader.data);
trace(photo+", "+photo.length);
trace(photo.pic.description);
}
}
这样是没有问题的,运行也是对的,但是如果在函数外面trace(photo)就不行了,这是为什么呢?我已经在函数外面声明photo为XML类的对象,应该属于全局变量的范畴,应且在函数里面对photo进行了赋值,为什么导函数外面trace的时候就会出问题呢?
以下为出问题后的结果:
TypeError: Error #1009: 无法访问空对象引用的属性或方法。
at XMLPhoto_fla::MainTimeline/frame1() 展开
1个回答
展开全部
当然不行了 你这个函数getxml 是被loadxml这个监听的 用的COMPLETE 就是说
未加载完 是不可以调用XML里面的数据的。懂????
未加载完 是不可以调用XML里面的数据的。懂????
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2022-08-05 广告
苏州蓝晓生物科技有限公司。标准化核心产品:公司拥有完整的琼脂糖介质、葡聚糖介质、聚甲基丙烯酸酯介质生产线,年产分离介质50000L,产品质量稳定并达到国际领先水平。核心优势:公司核心技术人员拥有近二十年不同基质的基球开发和官能化的丰富技术经...
点击进入详情页
本回答由苏州蓝晓生物科技有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询