2017-05-25 9 views
-1

ユーザがアクションを実行するときにブラウザウィンドウを開く必要があります(この例ではsetTimeoutを使用すると簡単です)。javascriptから1つ以上の複数のウィンドウを開く - ポップアップなし

私はブラウザが最初のwindow.openだけを開くことができ、残っていないことに気付いています。

原因は何ですか。それを修正するには?あなたは、デフォルトでは、ウィンドウを一意にする必要が

setTimeout(function() { 
 
    window.open("https://www.w3schools.com"); 
 
    window.open("https://www.google.com"); 
 
}, 3000);

+0

どのブラウザをお使いですか?私はクロームでうまく働いた。 – George

+0

[複数のウィンドウをwindow.open()を使用して複写可能](https://stackoverflow.com/questions/18732775/multiple-windows-using-window-open) – zerek

+0

私はそれを試したところ、Chrome上で動作しますが、ポップアップを有効にする必要があります(アドレスバーの右側にあります) – Paulooze

答えて

0

、ブラウザが新しいウィンドウに名前を与えるが、window.openの複数のインスタンスは、(ソースを発生したときにそれを動的に更新しません - 最初の行はhttps://developer.mozilla.org/en-US/docs/Web/API/Window/open)。そう、彼らにのような(IDSの助けを借りて)固有の名前を付け:

window.open('/path/to/page.php', 'UNIQUE_WINDOW1', 'width=300,height=400'); 
window.open('/path/to/page2.php', 'MORE_UNIQUE_WINDOW5', 'width=300,height=400'); 

を、これはあなたが行うことができます動作しない場合:これは何をするか

window.open('/path/to/page.php'); 

$.post('/path/to/page2.php', {}, function(res) 
{ 
    var win = window.open('', 'WINDOW_NAME', 'width=540,height=440'); 
    with(win) 
    { 
     open(); 
     write(res); 
     close(); 
    } 
}); 

は、ページには何も投稿していない、ですが、RESそのファイルの出力を返します。したがって、window.openを変数に割り当て、それを開いてファイルに出力を書き込みます。 :)

+1

なぜdownvote - 私は問題ありません。 – ThisGuyHasTwoThumbs

関連する問題