関数window.open()
を使用すると、補助ウィンドウとタブを生成できます。
JavaScript で「親」ページの生成された補助ウィンドウとタブのリストを取得するにはどうすればよいですか?
編集:作成したウィンドウを追跡せずにこれを行う方法を探してい
関数window.open()
を使用すると、補助ウィンドウとタブを生成できます。
JavaScript で「親」ページの生成された補助ウィンドウとタブのリストを取得するにはどうすればよいですか?
編集:作成したウィンドウを追跡せずにこれを行う方法を探してい
JavaScript でこれを行う方法はありません。それらを自分で追跡する必要があります。
var windowArray = [];
// whenever you open a window...
var newWindow = window.open(...);
windowArray.push(newWindow);
// whenever you close a window...
if (opener && !opener.closed && opener.windowArray) {
// search for your window in the array
var matchingIndex = -1;
for (var i = 0; i < opener.windowArray.length; i++) {
if (opener.windowArray[i] === window) {
matchingIndex = i;
break;
}
}
// if your window was found, remove it
if (matchingIndex !== -1) {
opener.windowArray.splice(matchingIndex, 1);
}
}
ウィンドウを配列に保存することはできますが、直接行うことはできないと思います。
var wins = [];
function openWindow(win){
newWin = window.open(win);
wins.push(newWin);
}
js に子ウィンドウとタブを返す組み込みの方法があるかどうかはわかりませんが、window.open() を呼び出すたびに配列にエントリを作成することで、それらを追跡するための配列を作成できます。
これはどう:
var windowArray = [];
windowArray.push(window.open(yourWindow));
windowArray
開いているすべてのウィンドウまたはタブへの参照を保存します。