从与SWF不在同一目录中的页面在AS3中播放声音的问题?

时间:2010-01-25 00:55:44

标签: flash actionscript-3

嘿溢出。长时间听众,第一次来电。

所以这就是我所拥有的:我正在尝试在Flash / AS3中创建一个声音播放器,它将接收外部MP3,加载它,并使用Sound()播放它。你典型的音乐播放器,没什么特别的。问题是它工作正常,一切都很好,没有错误......直到我从网站的不同部分链接它。

我将swf本身保存在 mydomain.com/projects/fsp 中。我有一个MP3,我保存在该目录的子目录中 mydomain.com/projects/fsp/music/song.mp3 ,并且embed将mp3位置作为flashvar参数: fsp.swf?文件=音乐/ Song.mp3的

如果我从 mydomain.com/projects/fsp/index.html 进行测试,它就可以了。 swf加载,加载mp3,一切顺利。

但是,如果我将swf从任何其他位置嵌入,例如 mydomain.com/blog ,我们突然死在了水中。 swf加载,但mp3没有。

我很困惑。 swf在两个实例中加载都很好,这只是加载导致问题的mp3的第二步。即使我们两次都指的是同一个声音文件,实际的swf也在同一个位置。当我使用绝对和相对( ../projects / fsp.swf?file = music / song.mp3 )引用嵌入时,会发生这种情况。

任何线索?

2 个答案:

答案 0 :(得分:0)

您可能会被跨域安全问题所困扰。

您是否在Web根目录中有一个有效的crossdomain.xml?

编辑:保持那个。您需要指定相对于当前页面的mp3文件的路径

答案 1 :(得分:0)

根据您构建加载mp3的路径的方式,您可能会遇到问题。我要做的第一件事是使用像Fiddler,Charles或Firebug内置代理的http代理。查看文件的加载位置。我的预感是你正在尝试加载文件/blog/music/song.mp3,这可能不存在。