0

jQuery UIのダイアログシステムやColorboxによって生成されるような、CSSベースのポップアップウィンドウについて質問があります。それら(またはそれらのようなもの)を使用してHTMLページへのポップアップウィンドウを開き、そのページにJavascriptが含まれている場合、ポップアップウィンドウのJavascriptは独自のコンテキストで実行されますか、それともコンテキストの一部になりますか?それを開いた親ウィンドウのJavascript?名前空間の衝突が発生しないように、両方のページ(親とポップアップ)にJavascriptを記述できるようにお願いします。

前もって感謝します!ダグ

4

3 に答える 3

1

それはポップアップの種類によって異なります。window.open()(ここでは、新しいブラウザウィンドウを開くポップアップではなく、ページはめ込みポップアップについて話していると思います。)

別のページを読み込むIFRAMEが含まれている場合、そのページには独自のスタイルがあります。必要なCSSファイルとJavaScriptファイルを再ロードする必要があります。

IFRAMEが含まれておらず、コンテンツがAJAXを介してロードされる(または「親」HTMLページに直接出力される)通常のDIVまたはその他の要素のみが含まれている場合、ポップアップは親ページのコンテキストで実行されます。

于 2010-03-22T12:23:35.630 に答える
1

実際のポップアップ(新しいウィンドウ)を使用する場合、それは間違いなく独自のコンテキストにあります。

純粋にHTMLでモーダルウィンドウを使用する場合は、状況によって異なります。iframe(独自のコンテキスト)または挿入された要素(親コンテキスト)にすることができます。

于 2010-03-22T12:24:52.987 に答える
1

Colorboxを使用すると、iframeプロパティをtrueに設定でき、コンテンツがiframeに読み込まれます。これにより、ページに独自のスコープが与えられます。iframeを使用しない場合、ページは現在のドキュメントのコンテキストで読み込まれます。

$('a.someLink').colorbox({ href:"somePage.html", iframe: true });
于 2010-03-22T12:27:31.363 に答える