无法隐藏嵌入在iframe中的Flash SWF对象

时间:2012-04-12 22:20:18

标签: html css flash iframe visibility

在我的HTML页面上,我<div>的{​​{1}}引用另一个页面,其中包含Flash SWF对象。如果我设置其中任何一个:

<iframe>
在包裹&lt; display:none; visibility:hidden; opacity:0; filter:alpha(opacity=0); 的{​​{1}}上的

,SWF对象有时会保持清晰,而<div>iframe>会按预期退出视图。

奇怪的是,它确实有效有时,具体取决于我使用的SWF对象。

预期效果发生在我的Mac上的所有最新浏览器中以及我的Windows 7计算机上除了之外的所有浏览器。

修改

以下是一些说明问题的示例代码:

<div>

和样本SWF对象作为豚鼠:

<iframe>

将存在于文件 hideswf-iframe.html

这应该适用于Mac上最新版本的Safari,Chrome和Firefox以及Windows 7计算机上最新版本的Chrome,Firefox和Internet Explorer,它应该会失败(没有错误,但隐藏行为不会在Windows 7机器上的Safari中出现。

值得注意的是,我注意到有关已经通过和失败的SWF对象的一件事是,那些失败的对象都是围绕视频内容而已经过去的那些对象没有。虽然我没有测试过六个以上的物体,但这非常巧合。 :)

3 个答案:

答案 0 :(得分:1)

一直试图解决这个问题,没有从safari中找到任何文档,尝试了所有可能的css和jquery隐藏组合,它不起作用 对于那些持怀疑态度的人,可以在safari上查看http://css-tricks.com/examples/AnythingSlider/并浏览幻灯片,你会看到3D幻灯片中的错误。

答案 1 :(得分:0)

如果您的案例是:

<div id="main">
  <iframe>
    <object.../>
  </iframe>
</div>

我建议你使用jQuery("#main").toggle(),这在我的经验中效果很好。

答案 2 :(得分:0)

只需将这一行JavaScript添加到您的页面:

 swfobject.switchOffAutoHideShow();