Flash IE9缓存

时间:2011-07-07 18:56:07

标签: flash internet-explorer caching

首先,我的swf在Firefox和Chrome中运行良好,它在我第一次访问IE9中的页面时工作。但是,当我在我的网站上转到另一个页面时,闪存应该再次启动(播放音频),但事实并非如此。当我清除缓存时,它将再次用于那一页。

这几乎肯定是Internet Explorer缓存问题,请不要建议没有缓存,因为这是一个相当大的Flash文件,需要在页面之间缓存,但需要重新启动。

我尝试了什么:我添加了一个名为“重启flash”的ExternalInteface回调方法,即重启我的音频播放,但在我的html页面中我不知道如何去做。我在swf对象和html / javascript之间来回调用其他外部接口,所以我知道如何做到这一点。

我搜索了谷歌,已经有5个不同的论坛说要么添加时间戳,要么指定没有缓存,两者都避免缓存。任何的想法?谢谢!

编辑: 我如何在AS3中播放声音

var newSound:Sound = new Sound();
newSound.load(new URLRequest("http://translate.google.com/translate_tts?tl=en&q=" + temp));
var channel:SoundChannel = new SoundChannel();
channel = newSound.play();
channel.addEventListener(Event.SOUND_COMPLETE, playNext); ....etc

1 个答案:

答案 0 :(得分:1)

好了几天,我找到了解决方案。在页面加载时,我只是在我的actionscript中调用一个名为restartFlash的函数,它再次启动声音。现在它也适用于IE。

<SCRIPT LANGUAGE='Javascript'>
 window.onload = function()
    {

getFlashMovie("flashdemo").restartFlash();
  }
 </SCRIPT>