我在我的项目中使用iframe,似乎每当它在不透明背景上加载内容时 - 它会在正确显示之前闪烁“白色”约1秒。
似乎它在jQuery脚本准备好之前触发了加载的事件。我试过了
style="visibility:hidden;" onload="this.style.visibility = 'visible';"
但不起作用。还有其他想法摆脱这个吗?
答案 0 :(得分:4)
尝试使用:
style="display:none" onload="this.style.display = 'block';"
visibility:hidden
实际上并没有“隐藏”元素 - 它仍然会占用它可见的空间。 display:none
实际上使元素完全不可见,就好像它不存在一样。
答案 1 :(得分:4)
如果您可以控制框架页面 - 将该页面上的背景颜色设置为透明。大多数浏览器默认为白色
答案 2 :(得分:0)
我遇到了一些困难:
style="display:none" onload="this.style.display = 'block';"
在Chrome和Safari上工作。
如果这些不适合您,请尝试:
style="opacity: 0;" onload="this.style.opacity = 1;"
答案 3 :(得分:0)
我确实遇到了这个问题,并尝试了此页面上的所有补救措施,但没有成功。它在Chrome上闪烁,而不是FireFox。
对我有用的是改变:
$("#iframe").prop('src', url);
到
$("#iframe").attr('href', url);