通过Javascript触发ActionScript函数

时间:2014-05-06 09:27:52

标签: javascript actionscript

当点击浏览器关闭按钮时,我需要通过js调用actionscript 2函数。我怎样才能做到这一点?我试过这个,但没有运气。

AS2

import flash.external.*;
function test1() {
//do something
}

JS

<script type="text/javascript">      
        window.onbeforeunload = function(){
             test1();
             return 'text here' }; 
</script>

2 个答案:

答案 0 :(得分:3)

我可以在动作3中实现这一点。

JS代码:

window.onbeforeunload = function(){
            var flashObj = document.getElementById('fla');
                flashObj.changeText("closing");
             return 'text here'
              }; 

AS代码:

ExternalInterface.addCallback('changeText', changeText);
ss.text = "ello"
function changeText(val)
{
    ss.text = val;
}

这里的ss是动态文本字段。

答案 1 :(得分:0)

这可能是不可能的,我已经在onforeiload上使用,在服务器上加载图像,这实际上是一个php脚本

或者至少如果它确实有效将是浏览器特定的,因为chrome喜欢在onbeforeunload函数上阻止x-script和ajax调用,期望它也从flash实例中提取内存

然而,非常接近的事情应该是可能的

如果可能的话,将你的逻辑转移到javascript中,使用抓取图像hack进行服务器端通信,并返回一个字符串以向用户提供一个&#34;你确定要退出这个优秀的页面吗?&#34;风格问题

ps我不是指在javascript中重写所有内容,只是可以从javascript中调查用户正在做什么,所以当用户关闭页面时,javascript可以去#34;但是你当前正在编辑你真棒的XXXXX图像?&#34;其中XXXXX是从as2

进行javascript调查的最后一件事