0

I know there are an abundance of articles and forum post (many of them from myself) regarding ExternalInterface, I guess I'll add one more...

I have a small flash app (a button) which is set up to test the availability of ExternalInterface and it works great. I also have a larger, more complex, flash mp3 player, which I am trying to use ExternalInterface with; it does not work so great. The question is, where does the problem lie? My working externalInterface code looks like this:

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);  
}  

And all of that works great. My mp3 player code looks like this (excerpt, full code posted here): At the top-

import flash.external.ExternalInterface;  

and where I want to call the 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{...

So why does the first one work and not the second one? I feel like I'm calling them correctly from the html. Could it be a problem with importing the flash.external.ExternalInterface? Should I include that in the .flv where the .as is imported/included, instead of in the actual actionscript? All help/ideas are greatly appreciated...

4

1 回答 1

0

mp3 播放器 swf 和 html 在同一个域上吗?

您是否在对象 + 嵌入标签中设置了 allowscriptaccess=always?

于 2009-06-28T16:56:14.417 回答