【问题标题】:My ActionScript's ExternalInterface callback function isn't going through. How can I debug it?我的 ActionScript 的 ExternalInterface 回调函数没有通过。我该如何调试它?
【发布时间】:2009-09-08 18:35:39
【问题描述】:

请帮忙?看来我的回调函数没有被调用......返回。我正在使用 jQuery 和 Flash 8。要访问 Flash 对象,我正在使用 jquery swfobject 插件,c.f. (http://jquery.thewikies.com/swfobject/examples)。如果您认为我一开始就没有正确访问 SWF,请推荐有关我将如何执行此操作的代码。谢谢!

JavaScript 代码:

$("#songplayer").flash("callCueSong(" + songid + ")");

Flash 代码:

import flash.external.*;
ExternalInterface.addCallback('callCueSong', null, cueSong);


stop();
pause = false;
pp_btn.hitArea = pause_hit_area;
love_btn.hitArea = love_hit_area;
_root.display_txt.backgroundColor = 0xffffff;

function cueSong(songid) {
    trace('Cueing track ' + songid);
    _root.sid = songid;
    _root.sound_mc.songStarter('sent', false);

}

MovieClip.prototype.songStarter = function(next_direction, feedback) {
      // code goes here
}

【问题讨论】:

    标签: javascript jquery flash actionscript externalinterface


    【解决方案1】:

    我的代码工作。我只是上传了错误的 SWF,并没有发布到正确的位置。我是通过放下面的调试代码,上传后发现的,注意到虽然出现在本地调试控制台中,但并没有出现在Flash Tracer中

    trace("Availability: " + ExternalInterface.available);
    

    另外,我更改了 Flash 的安全性。在 HTML 中,我将“AllowScriptAccess”设为“always”,在 SWF 中,我将:

    System.security.allowDomain('http://www.mydomain.com', 'http://mydomain.com', 'mydomain.com', 'amazonaws.com');
    

    感谢收看!希望你以后好运。

    【讨论】:

      猜你喜欢
      • 2019-05-25
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      • 2014-12-22
      相关资源
      最近更新 更多