0

window.openで開いた子ウィンドウからwindow.openで新しいウィンドウを開こうとしています。しかし、最初の子は 2 番目の window.open で閉じます。

4

2 に答える 2

0

これは、ブラウザーが悪いユーザー エクスペリエンスと見なすものと、潜在的に無限の再帰を防止するためです。で開いた最初のウィンドウを確認してくださいwindow.open— どこかで、おそらく「ポップアップウィンドウがブロックされました」などの通知を見つけるでしょう。

たとえば、ページに次のスクリプトがあるとします。

window.open(location)

…ブラウザーが介入してコードの 2 回目の実行を防止しなければ、無限ループがトリガーされます。ウィンドウはそれ自体のコピーを開き、ウィンドウはそれ自体のコピーを無限に開きます

これを回避するには、サイトまたはアプリケーションのユーザー エクスペリエンスを 1 つまたは 2 つのウィンドウに制限するようにしてください。ウィンドウに名前が割り当てられ、同じドメインで動作する場合、互いの場所を変更できます。これでニーズが満たされるかもしれませんが、そうでない場合は行き詰まってしまいます!

于 2013-03-06T12:49:33.493 に答える
0

利用可能なコードがないので、私は推測していますが、あなたは window.open メソッドを使用していません:

window.open(URL,name);

両方の window.open 呼び出しで同じ名前を指定している場合、開いているウィンドウは既存のウィンドウを同じ名前に置き換え、説明した動作を提供します。

于 2013-03-06T12:59:00.303 に答える