次のシナリオがあります。
- メインページ
- ネストされたページ
- 共通のJSファイル(両方のページに含まれています)
ネストされたページは、その後メインページのiframeに読み込まれます。両方のページは、ページのロード時に共通のJSファイルから関数を呼び出します。
ライブデモ:
http ://www.ecmazing.com/misc/pause-execution/mainpage.html
http://www.ecmazing.com/misc/pause-execution/nestedpage.html
http://www.ecmazing.com /misc/pause-execution/common.js
共通のJSファイルには、H1要素を赤くペイントする1つのグローバル関数が含まれています。その関数の開始時に実行を一時停止して、H1要素がまだ黒である間に実行を一時停止したいと思います。
メインページでそれを行う方法:
これは些細なことです。ページをロードし、ブラウザーの開発ツールを開いて、common.jsファイルを選択し、関数の最初の行にブレークポイントを設定するだけです。次に、ページをリロードします。ブレークポイントはリロードを永続化し、実行は一時停止されます。
ネストされたページでそれを行う方法:
現在、ChromeとFirefox(Firebug)では、上記で設定されたブレークポイント(メインページ用)は、ネストされたページでも機能します。両方のページが同じJSファイルを使用し、そのファイルにブレークポイントを設定すると、両方のページに自動的に適用されます。残念ながら、このルールはIEには適用されません。
さらに悪いことに、後でブレークポイントを設定し、iframeのみをリロードしても、ブレークポイントは持続しません。
そのため、IEでネストされたページの実行を一時停止する方法がわかりません。できますか?(関数の先頭に手動でaを設定することでこれに対処していdebugger;
ますが、可能であれば、IEの開発ツールを使用してブレークポイントを設定できるようにしたいと思います。)