0

Internet Explorer 9 の HTML フレームセット (または iframe) に置かれた Flash ムービーの奇妙な動作に関する問題を調査しています。 index.html ( http://melnishyn.narod.ru/ppt2swf/index.html ) を開くとムービー最初のフレームを短時間表示してから、空の白いフレームにジャンプします。

index.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になります

frame.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 ファイル) から作成されているため、ソースにアクセスすることはできません (逆コンパイルする以外は)。

私は2つの可能な回避策を考えています.1つはラッパーswfを使用し、もう1つはjavascript setTimeoutを使用して、GotoFrameメソッドで必要なスライドにムービーを常に設定します。ただし、どちらの回避策も望ましくありません。

より良い解決策はありますか?

4

0 に答える 0