一个具有Flash小部件(音乐播放器),并且在一个页面上大约有10个实例。我需要在Flash和嵌入页面的javascript之间进行通信。很长时间以来我对ActionScript并没有做太多事情,但是有些搜索使我here转向了ExternalInterface。看起来很完美,但是有一个问题。我做了这样的事情:

ExternalInterface.addCallback("stopTrack", this, stopTrack);


但是,现在stopTrack将在页面上注册10个不同的东西。我希望能够仅停止10条曲目之一。

最佳答案

我不太记得-但是我似乎认为回调不是添加到window对象,而是添加到页面上的swf对象-有点像

document.getElementById('musicFlashPlayer10').stopTrack();


仅在该实例上触发回调。

在浏览器之间,此格式可能会有所不同-无论如何,回调都会添加到为其加载Flash文件的每个JavaScript实例中。

10-06 00:32