【发布时间】:2012-03-31 22:25:03
【问题描述】:
页面加载时是否可以避免出现白屏?特别是对于我在我的页面上使用的 iframe?当父内容已经被主题化时,屏幕上有一个白色的盒子看起来很奇怪。
提前致谢!! :)
【问题讨论】:
标签: javascript html css
页面加载时是否可以避免出现白屏?特别是对于我在我的页面上使用的 iframe?当父内容已经被主题化时,屏幕上有一个白色的盒子看起来很奇怪。
提前致谢!! :)
【问题讨论】:
标签: javascript html css
您是否尝试过将 iframe 的背景颜色设置为父页面的背景颜色?
【讨论】:
如果 iframe 在同一个域中,您可以使用 JavaScript 在父文档的 iframe 上设置 style.visibility= 'hidden',然后让子文档到达父文档并调用函数来设置 visibility back到visible 当它们加载到足以拥有具有正确背景的样式表时。 (onload 在子框架上,或者可能更早。)
我不知道这是否值得,真的。人们习惯于在页面加载时渲染不完整。
【讨论】:
<iframe id="fooframe" src="child.html" style="visibility: hidden">,在子文档中使用<script type="text/javascript">window.onload= function() { window.parent.getElementById('fooframe').style.visibility= 'visible'; };</script>。但是最好只在启用 JavaScript 时才发生隐藏,否则 iframe 将永远不会出现在 JS 不可用的浏览器上。如果子文档包含大量图像内容,您可能希望在onload 之前再次启用可见性。
您可以让 iframe 在加载之前不可见。
使用以下iframe.style.visibility='hidden'; 使其不可见将使您的 iframe 隐藏,但仍会占用原来的空间
当它加载时,只需使用iframe.style.visibility='visible'; 使其再次可见,您就不会看到任何闪烁..
干净简单的imo。
【讨论】: