トップバーにさまざまなページへのリンクがあるシンプルなサイトがあります。
このようなもの
==============================================
Index link | Page 1 | Page 2 | Page 3
==============================================
「サイト」は船上の科学データ システムのユーザー インターフェイスであり、ユーザーは実行したいタスクに応じてさまざまなリンク間を移動することがよくあります。アイデアは、開いているページの数をトップ バーのリンクに制限することです。つまり、1 つのブラウザ セッション内で複数の「ページ 1」または「ページ 2」を開くのではなく、既存のページに移動するだけです。 . これらのページには動的な JQueryUI 情報が含まれており、新しいページを開くと失われます。
既存のページにフォーカスを移したり、まだ表示されていない場合は開いたりできるようにする必要があります。
以下のコードは、呼び出し元のページがフォーカスを必要とするページを開いた場合にうまく機能します。
function launchApplication(l_url, l_windowName)
{
if ( typeof launchApplication.winRefs == 'undefined' )
{
launchApplication.winRefs = {};
}
if ( typeof launchApplication.winRefs[l_windowName] == 'undefined' || launchApplication.winRefs[l_windowName].closed )
{
launchApplication.winRefs[l_windowName] = window.open(l_url, l_windowName);
} else {
launchApplication.winRefs[l_windowName].focus()
}
}
私の問題は、呼び出し元のページによって生成されなかったページを参照することです。
私はかなりの調査を行いましたが、セキュリティ上の理由により、呼び出し元のページによって生成されていない開いているブラウザー ウィンドウにはアクセスできないようです。
この機能を実装する方法はありますか? すべてのページとブラウザの URL とウィンドウ名が Chrome と Firefox に限定されていることは承知しています。
アドバイスをいただければ幸いです。