4

iFrame内にFlashアニメーションがあります。そして、それを非表示にしようとすると、IE10はそれを表示したままにし、他のコンテンツとオーバーラップさせます。

<body style="background-color: #EEE">
    Testing IE10
    <div id="swfDiv">
        <iframe src="swf.html" width="500" height="50"></iframe>
        <br />
        <button onclick="document.getElementById('swfDiv').style.display='none'">Hide</button>
    </div>
    <div style="background-color: #DDD">
        This try to hide the animation, but it is not working on IE10.  <br/> It works fine in others browsers and earlier versions of IE.
    </div>
</body>

IE10

2013年2月8日更新 Safari(5.1.7)でも同じ問題が見つかりました ここに画像の説明を入力してください

4

2 に答える 2

5

どうやら最良の解決策はそれを画面から移動することです:

.xhide
{
    display: block;
    position: absolute;
    left:-9999px;
}

クリックするとこのクラスを追加して非表示にできます。たとえば、次のようになります。

document.getElementById('swfDiv').className = "xhide";
于 2013-02-01T22:03:27.350 に答える
1

iframeを閉じる前にナビゲートすると、XBAPでの問題が解決しました。これは、フラッシュでも機能すると思います。

var $iframe = $("#id");
$iframe[0].src = 'about:blank';
$iframe.remove();
于 2013-07-05T18:16:26.077 に答える