IE 10不会渲染更新的Flash SWF

时间:2013-05-07 13:02:57

标签: flash flex internet-explorer browser-cache internet-explorer-10

我使用以下代码在网页上显示Flash内容 -

<embed src="test_flash_file.swf" quality="high" bgcolor="#869ca7"
    width="100%" height="100%" name="fclient" align="middle"
    play="true"
    loop="false"
    quality="high"
    allowScriptAccess="sameDomain"
    type="application/x-shockwave-flash"
    pluginspage="http://www.adobe.com/go/getflashplayer">
</embed>

这在所有浏览器中都没有问题。但是,当我在 test_flash_file.swf 中进行任何修改并在目录中更新此文件时,IE 10仍将呈现早期的Flash文件而不是更新的文件。在其他浏览器或IE的较低版本(7,8)中不会发生这种情况。

看起来IE 10从缓存中读取。有没有办法阻止IE 10这样做?

(注意:我使用Adobe Flex Builder导出发布版本)

1 个答案:

答案 0 :(得分:1)

为了阻止浏览器缓存,如果您可以在网页中使用PHP,可以像这样包含:

<embed src="test_flash_file.swf?version=<?php echo filemtime('test_flash_file.swf'); ?>"
    quality="high" bgcolor="#869ca7"
    width="100%" height="100%" name="fclient" align="middle"
    play="true"
    loop="false"
    quality="high"
    allowScriptAccess="sameDomain"
    type="application/x-shockwave-flash"
    pluginspage="http://www.adobe.com/go/getflashplayer">
</embed>

这样一旦swf更新,其文件时间就会改变,因此浏览器不得不再次下载。 积分转到Dave Keen