我知道有很多关于ExternalInterface的文章和论坛帖子(其中很多都是我自己写的),我想我会再加一篇……
我有一个小的flash应用程序(一个按钮),它是用来测试ExternalInterface的可用性的,它工作得很好。我还有一个更大、更复杂的flash mp3播放器,我正试着用它来使用ExternalInterface;它的效果不是很好。问题是,问题出在哪里?我的externalInterface代码看起来像这样:
import flash.external.ExternalInterface
myBtn.onRelease = function(){
chkAvail();
}
function chkAvail() {
var myText:TextField = this.createTextField('myText', this.getNextHighestDepth(), 100, 100, 300, 21);
ExternalInterface.call("alert",'EI works!!");
myText.text = String(ExternalInterface.available);
} 所有这些都运行得很好。我的mp3播放器代码看起来像这样(摘录,完整的代码发布的here):在顶部-
import flash.external.ExternalInterface; 我想把它叫做javascript-
function loadPlaylist(){
//attempting to make external js call
ExternalInterface.call("alert", "Hello World!1");
//
track_display_mc.display_txt.text = LOADING_PLAYLIST_MSG;
if(track_display_mc.display_txt._width>track_display_mc.mask_mc._width){
track_display_mc.onEnterFrame = scrollTitle;
}else{...那么,为什么第一个可以工作,而第二个不行呢?我觉得我从html调用它们是正确的。导入flash.external.ExternalInterface会有问题吗?我是否应该将其包含在导入/包含.as的.flv中,而不是包含在实际的actionscript中?非常感谢所有的帮助/想法……
发布于 2009-06-28 16:56:14
mp3播放器swf和html在同一个域吗?
你在object + embed标签中设置allowscriptaccess=always了吗?
https://stackoverflow.com/questions/884523
复制相似问题