0

我正在使用以下代码在网页上显示 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 这样做?

(注意:我正在使用 Adob​​e Flex Builder 导出发布版本)

4

1 回答 1

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

于 2013-05-08T04:04:39.460 回答