我是一名.net开发人员,不知何故最终试图让一些Flash工作 - 这对我来说是全新的,所以请耐心等待!
我想在弹出窗口中显示Flash视频,当视频播放完毕后,使用javascript函数“closeIt”关闭窗口:
<script>
function closeIt() {
alert("About to close...");
//code to close window here...
}
</script>
我怎样才能做到这一点?我已将视频导入Flash(选择“使用播放组件加载外部视频”)。这是在frame1中。我认为在第二帧中我可以在Actions窗口中调用ExternalInterface.call(“closeIt”)。我试过这个,但是当我在网络浏览器中发布和查看flash电影时,我从未看到过javascript警报。
有人可以帮忙吗?
答案 0 :(得分:2)
AS3,选项1:
import flash.external.ExternalInterface;
(...)
ExternalInterface.call("closeIt()");
AS3,选项2:
var request:URLRequest = new URLRequest("javascript:closeIt();");
navigateToURL(request, "_self");
您也需要前面提到的两种方法的allowcript访问权限:
<param name="allowscriptaccess" value="always" />
答案 1 :(得分:1)
您可以从flash调用JavaScript函数。
首先,您将在主机HTML页面中更新您的OBJECT / EMBED脚本,以包括:
<param name="allowscriptaccess" value="always" />
然后,您可以从代码中执行JavaScript方法调用,如:
getUrl('javascript:closeIt();');
答案 2 :(得分:1)
坚持使用AS3。您想使用ExternalInterface类。课程参考:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html
示例用法:
// import the package
import flash.external.ExternalInterface
// then launch that alert
ExternalInterface.call("closeIt");
另外我建议您使用firebug http://getfirebug.com来调试它的JS部分。