Flash and External Javascript
Flash and External Javascript
可能重复:
用JavaScript 调用Flash ExternalInterface
我有一个带有AS代码的闪存文件。我想运行Javascript,它将运行一个函数AS。例如:在AS中,我有一个名为"loadXML"的函数。保存SWF文件的对象称为"pawel"(对象的ID)。如何运行将在"pawel"函数"loadXML"上运行的Javascript代码?我正在将Flash 6与AS 3一起使用。
您应该使用ExternalInterface.addCallback()
方法。看见http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html#addCallback()了解详细信息。
我建议您检查一下http://www.redcodelabs.com/2012/04/calling-actionscript-method-from-javascript/它有运行示例和as3/js代码。
我相信这里的目标是将xml文件的位置发送给swf(它已经编译了一个外部.as文件),以便swf可以编译、解析和创建一些东西。
我已经用flash变量做过很多次了,这可能对你也有用。在网页中嵌入.swf时,您可以通过js或html或php动态地向其发送flash变量。一旦我的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/
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 使用php或javascript从facebook相册URL中删除多余的部分
- Flash and External Javascript
- 使用PHP更新external.js中的Javascript变量
- Yii renderPartial with external javascript
- JavaScript eval() 失败与 window.external.notify(),适用于 window.al
- 如何在JavaScript中注册window.external.notify事件处理程序
- 通过Javascript而不是<script src=“;external.aspx”>
- 设置iframe's window.external成员通过javascript
- External javascript ajax
- External Javascript
- WebStorm Javascript External Libraries - Node.js
- 使用External Wait类暂停javascript函数的执行
- Internet Explorer - javascript “apply” 函数在 window.external e
- 无法从external.js文件调用javascript函数
- JavaScript将img src替换为External src
- 使用window.external将javascript Date对象传递给c# WebBrowser控件
- 在objective C中拦截来自javascript的window.external.notify调用