采用flash读取外部数据无论是loadVars类还是MovieClipLoader类还是XML.load()都会碰到一个问题就是外部数据的缓存,原则上flash一般只会载入一次,之后的数据都会从浏览器的缓存读取,无论你怎么刷新浏览器都一样的效果。解决的办法就跟JS中的处理一样,在后面增加一个随机数,以保证每次都是重新获取数据,而不是缓存。
比如读取xml数据一般如下操作:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | onClipEvent (load) { //解析户型图xml //system.useCodepage=true; //获取全局参数 var myXML:XML = new XML(); //myXML.load(_global.huxingXml); myXML.load(_global.huxingXml+"?end="+Math.random(1000000)); myXML.ignoreWhite = true; myXML.onLoad = function(success) { if (success) { //-------------------------------读取XML文件中的内容------------------------------------------------------- _global.hxXml = myXML.firstChild.childNodes; call("onload"); } else { trace("读取xml失败"); } }; } |
在后面加个后缀Math.random()。
相关文章:


我用这个方法提示读取XML错误。
您确认可行吗?
使用了多种变量还是错误:
Error opening URL “file:///D|/flash/g0001.xml?cachebuster=1266867363271″
我用这种方法的:
productsXML.load(”g0001.xml?cachebuster=” + new Date().getTime());
出错了,用您的,也是出错。
这个方法也不是万能的吧