我相信这里的目标是向 swf(已编译外部 .as 文件)发送 xml 文件在服务器某处的位置,以便 swf 可以编译、解析和创建某些内容。
我已经多次使用 Flash 变量进行此操作,这也可能对您有用。在您的网页中嵌入 .swf 时,您可以通过 js 或 html 向其发送 flash 变量,或使用 php 动态发送。一旦我的 fla 与硬编码的变量(如 xml)完美配合,我就会将 flash 变量代码添加到头部并对 fla 进行一些小的调整——这通常会破坏 fla 在 flash 中“正确”运行(因为它是现在依赖于这些外部变量)
无论如何,这就是我如何做我的 flash vars(还有其他方法,值得在谷歌上搜索)
import flash.net.*;
var flashVars:Object = new Object();
flashVars = this.loaderInfo.parameters;
var xmlVal;
for (var item:String in flashVars)
{
switch (item)
{
case "xmlLocation" :
xmlVal = String(flashVars[item]);
break;
}
}
这是发送值的 javascript:
<script type="text/javascript">
//flashObj
var flashvars = {};
flashvars.xmlLocation = "http://google.com/myXML.xml";
var params = {wmode:"transparent"};
var attributes = {};
swfobject.embedSWF("images/banner.swf", "yourSliderId", "175", "300", "9.0.0", false, flashvars, params, attributes);
</script>
这是使用 SWFObject(一个开放的 API Flash 嵌入 js 库)来处理 swf 嵌入。我更喜欢它,因为如果您查看上面的代码,您可以阅读并理解它,默认方式真的很难阅读、编辑和理解。
如果您只需要 XML,然后就完成了,那么这对您有用。如果您仍然需要使用 javascript 说点击“下一个”或“上一个”按钮,请参阅此网站文章,我相信这可能会进一步帮助您:
http://arrixlive.wordpress.com/2005/03/25/javascript-in-love-with-flash-control-swf-from-javascript/