0

我正在调查 Internet Explorer 9 中放置在 HTML 框架集(或 iframe)中的 Flash 电影的奇怪行为问题。如果打开 index.html(http://melnishyn.narod.ru/ppt2swf/index.html)电影短时间显示其第一帧,然后跳转到空白帧。

索引.html:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01Frameset//EN"
    "http://www.w3.org/TR/html4/frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Presentation</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    </head>
    <body>
        <iframe src='frame.html' width="400" height="300">
    </body>
</html>

直接打开 frame.html ( http://melnishyn.narod.ru/ppt2swf/frame.html ) 时,电影正确显示,但是我注意到当我更改电影的帧时(通过其内置的导航按钮或鼠标单击),它以某种方式将哈希添加到 url(仅在 IE 中),使其变为http://melnishyn.narod.ru/ppt2swf/frame.html#Slide1

框架.html:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01Frameset//EN"
    "http://www.w3.org/TR/html4/frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Frame</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
        <script src="swfobject.js" type="text/javascript"></script>
        <script type="text/javascript">
            swfobject.embedSWF("Holidays.swf", "FlashContainer", "400", "300", "10.2.0", "playerProductInstall.swf", {}, {width:'100%', height:'100%', allowScriptAccess: 'always'}, {});
            swfobject.createCSS("#FlashContainer", "display:block;text-align:left;");
        </script>
    </head>
    <body>
        <div id="FlashContainer"></div>
    </body>
</html>

在其他浏览器(Opera 12 和 Firefox 14)中一切正常。

这部电影是由转换器从演示文稿(MS Power Point 的 ppt 文件)制作的,所以我无法访问它的源代码(除了反编译它)。

我正在考虑两种可能的解决方法——一种是使用包装器 swf,第二种是使用 javascript setTimeout 通过 GotoFrame 方法不断地将电影设置为所需的幻灯片。然而,这两种解决方法都是不受欢迎的。

有没有更好的解决方案?

4

0 回答 0