php - 从 html 链接调用 AS3 函数 - Javascript? PHP? swf地址?

标签 php javascript actionscript-3 swfobject swfaddress

我有一个加载外部 swf 的 actionscript 函数,并且当前链接到同一个 swf 中的按钮...

function btnClick(event:MouseEvent):void{
SoundMixer.stopAll();
 removeChild(loader); 
 loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onSWFLoaded);
 loader.load(movieSWF)
 loader.x=Xpos
 loader.y=Ypos
 addChild(loader)


}


button.addEventListener(MouseEvent.CLICK,btnClick);

我想知道是否有办法从 swf 所在页面上的链接调用此函数。我猜 javascript、php 或 swfaddress 是最有可能的方式,但我对这一切都非常陌生,所以我不确定从哪里开始或如何去做。

如有任何帮助,我们将不胜感激。

最佳答案

您正在寻找 ExternalInterface.addCallback功能。这使您可以注册一个函数,以便可以从 JavaScript 代码外部调用它。

您的 HTML 可能如下所示(其中 'IDofSWF' 是页面上包含 SWF 的元素的 ID):

<a href="#" onclick="document.getElementById('IDofSWF').clicky()">
    Click to call btnClick in the SWF
</a>

在 Flash 中使用以下初始化代码:

import flash.external.ExternalInterface;

// ...

// This will allow JavaScript to call a function on the SWF named 'clicky'. It will execute the anonymous function passed as the second argument:
ExternalInterface.addCallback('clicky', function () {
    btnClick(null);
});

请注意,您不会获得 MouseEvent(我的示例传递 null 作为它的值),因为事件处理程序是手动调用的(从 JavaScript 外部调用)而不是从 SWF 内部调用鼠标点击。

关于php - 从 html 链接调用 AS3 函数 - Javascript? PHP? swf地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2577007/

相关文章:

apache-flex - 分离 MXML 和 Actionscript

php - 如何即时将输入(文本)值设置为 PHP 变量

javascript - Freichat 聊天不显示他/她的姓名 谁登录了?

javascript - 如何让图像填充一个div?

actionscript-3 - ActionScript 3中无类型变量的基本原理是什么?

actionscript-3 - 位图作为按钮?

javascript - 如何将编辑功能添加到数据表上的编辑按钮

php - 使用 Laravel 5.4 从数据库中删除数据

php - 登录/注销后显示闪现消息

javascript - 如何使用往返服务器提交 javascript 变量