私の 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 で "Simulate Modem Speeds" を使用して回線が調整されていると、ちらつきが大きくなります。
シナリオは非常に簡単です。メイン ページは次のとおりです。
<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 をクリアしないようにする方法はありますか?