23

ポップアップ ウィンドウを開き、次のように onbeforeunload イベントをアタッチしています。

win = window.open("http://www.google.com", "", "width=300px,height=300px");
win.onbeforeunload = function() {
    //do your stuff here
    alert("Closed");
};

URL を空のままにすると、アドレスとして「about:blank」を含む新しいポップアップが開きますが、閉じるとアラートが表示されます。

ご覧のように (外部 URL を使用して) 開くと、いったん閉じるとアラートが表示されなくなります。なぜこれが起こっているのですか?

4

4 に答える 4

2

ユーザーがポップアップを閉じたときに発生するオープナーウィンドウの「フォーカス」イベントをリッスンできます。

于 2013-12-02T15:46:53.530 に答える
1

残念ながら、JavaScript の同一オリジン ポリシーで禁止されているドメイン間で通信しようとしています。それを回避するには、サーバー側のプロキシまたはその他の醜いハックを使用する必要があります。

iframe に外部 Web サイトをロードするページをサイトに作成してみてください。次に、そのページをポップして開き、アンロードするのを聞くことができます。

于 2013-03-29T04:18:26.573 に答える