0

HTML ページからポップアップ ウィンドウを開くと、ポップアップ ウィンドウはチャット サーバーに接続し、利用可能なメッセージを送信し、ポップアップが閉じるときに利用できないメッセージを送信する必要があります。

問題は、ポップウィンドウを閉じる(ブラウザボタン)と、利用できないメッセージが送信されないことです。

私は試した、 $(window).bind("beforeunload",function(event) { var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable"); connection.send(pres); connection.disconnect(); });

も試した、

var timer = setInterval(function() {  
clearInterval(timer);   
if(window.closed) {  

    var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable");
    connection.send(pres);
    connection.disconnect();  
}  
}, 500);

しかし、私は自分自身の閉じるボタンを 1 つ持っていて、そのための機能があり、それは機能します。

var onCloseChatWindow = function(){
var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable");
connection.send(pres);
connection.disconnect();
window.close();
}
4

1 に答える 1

0

ポストバックする必要があります

ポストバックはページを再ロードするプロセスであるため、ポストバック後にページを閉じたい場合は、そのポストバック中にブラウザの onload イベントで実行されるように window.close() JavaScript を設定する必要があります。

通常はClientScript.RegisterStartupScript()関数を使用して行われます。

また

window.opener を使用できますリファレンスを参照してください

<body onclose="window.opener.somefunction('value');window.close();">

</body>
于 2013-06-30T07:00:48.370 に答える