1

次のように、アプリケーションによってポップアップウィンドウが開かれています。

function newPopup(url, windowName) {
    window.open(url,windowName,'height=768,width=1366,left=10,top=10,titlebar=no,toolbar=no,menubar=no,location=no,directories=no,status=no');
}
<a href="JavaScript:newPopup('lobby.do', 'lobby');">Enter Lobby</a>

そのポップアップウィンドウ内で、ユーザーがリンクをクリックしてそのポップアップのウィンドウの場所を移動できるようにします。

<a href="game.do">New Game</a>

ただし、ポップアップウィンドウでこのリンクをクリックすると、ポップアップは自動的に閉じられ、リダイレクトは行われません。onClickを追加してjavaScript:window.locationを使用してみましたが、同じ結果が得られます。これを引き起こしている可能性のあるアイデアはありますか?ChromeとFirefoxの両方でテストしました。

4

4 に答える 4

3

targetリンクの をポップアップの名前に設定するだけです。

<a href="game.do" target="lobby">New Game</a>

または、 から返された値を保存して、window.openその を設定し.locationます。

function newPopup(url, windowName) {
    return window.open(url,windowName,'height=768,width=1366,left=10,top=10,titlebar=no,toolbar=no,menubar=no,location=no,directories=no,status=no');
}

<a onclick="window.lobby=newPopup('lobby.do', 'lobby'); return false;" href="#">Enter Lobby</a>
<a href="window.lobby.location='game.do'; return false;" href="#">New Game</a>
于 2013-01-15T19:33:28.253 に答える
1

新しいウィンドウで開くには、次のようにリンクtarget_blankの最後に追加する必要があります。html

<a href="http://link-to-your-game" target="_blank">Enter Lobby</a> 
于 2013-01-15T18:35:43.700 に答える
0

私が正しく理解している場合、必要なのはポップアップに名前を付けることです。次に、そのポップアップを参照して、その内容を変更できます。

必要なのはほんの少しJavaScript

function createPopup(url) {
    newwindow=window.open(url,'testWindow','height=800,width=600');
    if (window.focus) {newwindow.focus()}
    return false;
}

これは次のように使用できます。

<a href="#" onclick="createPopup('http://www.google.com')" target="mine">use google</a>
<a href="#" onclick="createPopup('http://www.stackoverflow.com')" target="mine">use stackoverflow</a>

したがって、メインウィンドウからポップアップを制御できます。

于 2013-01-15T19:24:55.157 に答える
0

ajax を使用しない理由:

<a onclick="ajaxcall_to_newpage()"> click here to update the content </a>

そして、サーバーから新しいコンテンツを要求し、それを html にレンダリングする ajax 関数:

..
}).done(function(data){
   $('#your_div_of_pop_up').text(data);
});

仕事が終わりました!

于 2013-01-15T18:36:15.507 に答える