0

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

JavaScript 代码:

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

闪码:

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
}
4

1 回答 1

0

我的代码正在运行。我只是上传了错误的 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');

感谢您的关注!希望你在未来有好运。

于 2009-09-09T04:18:12.790 回答