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