首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ExternalInterface回调不起作用

ExternalInterface回调不起作用
EN

Stack Overflow用户
提问于 2011-10-27 06:19:16
回答 1查看 1.6K关注 0票数 1

我正在尝试从我的JavaScript调用我的ActionScript中的一个函数,我已经成功地用另一个闪存文件调用了一个函数,但在当前的闪存文件中,由于某种原因它失败了。我使用的是jQuery SWFEmbed,这是我的JS代码:

代码语言:javascript
复制
$.ajax({
        url: '<?php echo $html->url(array('controller' => 'voicenotes', 'action' => 'get_url'), true);?>' + '/' + container.children('#VoicenoteVnid').val(),
        dataType: 'json',
        type: 'POST',
        success: function(response) {
          container.children('.voicenote-info').children('.player').addClass('active');
          flashMovie = container.children('.voicenote-info').children('.player');
          alert(flashMovie.html());
          flashMovie.flash({
            swf: '<?php echo $html->url('/files/flash/reproductor_compact.swf',true); ?>',
            width: 240,
            height: 40,
            quality: "high",
            wmode: "transparent",
            allowscriptaccess: "always",
          });
          alert($('.player.active > object')[0].callIt());
        }              
      });

这是我的AS代码,这是在我的构造函数中:

代码语言:javascript
复制
public function reproductor()
        {
            ExternalInterface.addCallback("callIt", test);
            ExternalInterface.call("alert", "Que fue?");
            trace(ExternalInterface.available);
        }

这是我的函数:

代码语言:javascript
复制
private function test():String {
            return "this is a test";
        }

ExternalInterface.call正常工作,并且跟踪输出为真,我不知道发生了什么。

附言:如果您还能告诉我如何将参数传递给ExternalInterface回调,我将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-27 06:51:50

  1. 也许你用来查找SWF对象的Jquery选择器是错误的。为什么你不试着用另一种方法呢,只是为了在SWF完全加载之前调用你的debugging?
  2. Maybe函数。为什么不尝试将函数调用(CallIt)放在Ajax外部按钮中,并在警报被调用后按下它?

要在回调函数中接收参数,只需通过JS发送它,并在回调函数中将其作为参数接收。示例:

代码语言:javascript
复制
$('.player.active > object')[0].callIt("LOLSOME")

...

ExternalInterface.addCallback("callIt", test);
private function test(arg:String):String {
        return "param received from JS: " + arg;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7909630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档