任意の外部ドメインを指すiframeがありますhttp://A
。http://B
ユーザーイベントで別の外部ドメインに送信したい。
http://B
読み込みが遅いと言います。を設定しただけiframe.src = "http://B"
の場合、iframeは、完全にダウンロードされてレンダリングできるようになるA
まで、コンテンツを保持します。B
ユーザーが要求したため、これはユーザーを混乱させますが、表示されるのB
は。だけですA
。
../html/loading.html
ドメインから、たとえばとの間でA
ページをロードしたいB
。このページの読み込みは常に高速であると想定します。
設定iframe.src
が非同期であることを確認しました。次のコードを検討してください。
iframe.src = '../html/loading.html';
iframe.src = 'http://B';
これは開くことをスキップ../html/loading.html
して、右に進みますhttp://B
。(どれだけ速いloading.html
か、どれだけ遅いB
かに関係なく)。私もこれをやってみました:
iframe.src = '../html/loading.html';
iframe.contentWindow.location.reload();
iframe.src = 'http://B';
ただし、これはクロスドメインエラーをスローし、のにアクセスできないことを示しますcontentWindow
(ロードされていないhttp://A
ためloading.html
、まだオンでhttp://A
あり、強制的にリロードすることはできません)。
iframeにURLの同期ロードを強制する方法はありますか?私はChrome拡張機能を書いているので、それを特定する必要がある場合も問題ありcrx
ません。