読者です 読者をやめる 読者になる 読者になる

IE6でFlash読み込み時に「Press OK to continue loading the content of this page」が出る

IE6限定でFlashコンテンツを埋め込んだページを閲覧すると

Press OK to continue loading the content of this page

とダイアログが出る。
調べてみるとこれはどうやら特許関係で出てしまうようだ。


これを解決するための手段が Adobe のページで紹介されている。
http://www.adobe.com/jp/devnet/activecontent/articles/devletter.html


要約すると、直接 HTML に object ないしは embed タグを書くのではなく JavaScript の document.write でobject,embed タグを出力すれば良い。
こんな感じ。

function printFlashCode()
{
    document.write(' <embed id="hoge_flash" src="hogehoge.swf"\n');
    document.write(' name="hogehoge" quality="high" \n');
    document.write(' width="300px" height="300px" align="middle" \n');
    document.write(' play="false" loop="false" allowScriptAccess="always" \n');
    document.write(' type="application/x-shockwave-flash" >\n');
    document.write(' </embed> \n');
}

んで HTML のFlash表示部で表示する。

<div id="flash_content">
    <script language="Javascript" type="text/javascript" >
    <!--
        printFlashCode();
    //-->
    </script>
</div>


そして、この問題を解決する重要な点。
MultipleIEsのIE6ではこの解決策を施しても解決しない。
pureなIE6で試さないとダイアログが出てしまう。