请帮忙吗?似乎我的回调函数没有被调用...返回。我正在使用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
}
答案 0 :(得分: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');
感谢您的期待!希望你将来有运气。