2

在我的 Web 应用程序中,我使用的iframe是嵌入内容。用户可以使用锚链接与 iframe 交互,这会导致 iframe 的内容重新加载。

我注意到在 WebKit(Chrome 或 Safari)上 iframe “闪烁”,特别是在慢行上。显然闪烁是由在加载新内容之前清除 iframe 引起的。这不会发生在相同条件下的其他浏览器中,例如 FF 或 IE。此外,如果我在新的单独浏览器选项卡中打开 iframe 的内容,在这种情况下 UI 不会闪烁,因此闪烁似乎确实是由 iframe 引起的。

我在这里发布了一个例子:http: //www.genprofi-stammbaum.net/test/iframes.html

单击 iframe 中的链接会导致 Chrome 上的闪烁,如果线路受到限制,则闪烁越多,例如在 Fiddler 中使用“模拟调制解调器速度”。

场景非常简单,主页是:

<html>
 <head>
 </head>
 <body>
  <iframe src="iframe-content.php">
 </iframe>
 </body>
</html>

iframe 的内容是

<html>
<head>
<style>
  a, a:visited {color: blue}
</style>
</head>
<body>

<a href="<?php print "iframe-content.php?a=".time(); ?>">
<?php print "link_".time(); ?>
</a>

</body>
</html>

有什么办法可以防止 WebKit 在绘制内容之前清除 iframe?

4

0 回答 0