私は、不可欠なJavascriptライブラリを引き出す必要があるウェブページを作成していますが、組み込みクラスのプロトタイプを変更することによって他のコードも分解します。私はそれをiframeでサンドボックス化し、2人の間で協力的なデータ共有を設定しました。iframeが読み込まれた後にbody.onloadが常に呼び出されますか?
iframeのbody.onloadが起動すると、私のコードによって親ドキュメントが変更されます。理論的には、親または子のbody.onloadが最初に起動するかどうかに関係なく、このコードは正しいでしょう。実際には、Webサーバーに人工的な遅延を挿入してもiframeが常に親の前にロードされるように見えるため、コードパスをテストすることはできません。
親機は、子ドキュメントがロードされた後にのみ常にonloadを発生させることが保証されていますか?これはFirefoxの単なるクルークですか?
もし私がこのテストケースを与えてくれない場合は、sleep(5)
のchild.php
に子供が後で読み込まれるようにするにはどうすればよいでしょうか?
最後に、子供はJavascriptがそのJavaScript環境を変更したときに、これは、親フレームとは別であることが保証、またははそれが仕事になるのFirefoxのこの単なる気まぐれですか?
携帯性が重要です。ありがとう。
睡眠は決して競合状態の解答ではありません。それはゾンビを埋めるようなものです。遅くなるだけですが、再浮上します。 – JohnFx
「スリープ」は純粋に***です。私は競合状態を適切に解決しましたが、コードカバレッジを取得できません。 – spraff