0

調査を適切に行っていない場合は申し訳ありませんが、必要な答えが見つからなかったので、次のようにします。

メイン ページから、mainPlayer = window.open(); を使用して新しいウィンドウを開きます。

このウィンドウは、ユーザーが mainPlayer.close() をクリックするまで開いたままになります。イベント。(または単純に x でウィンドウを閉じます)

ただし、アイデアは、残りのページをブラウジングしながら、プレーヤーがプレイを続けられるようにすることです。

しかし、ユーザーが mainPlayer ウィンドウを開いたページを離れるとすぐに、mainPlayer ウィンドウへの参照が失われたように見えます。

サイトの他のページから、mainPlayer ウィンドウが開いているかどうかを確認し、クリック イベントで閉じるにはどうすればよいですか?

Thxジョン

編集

私はこのスレッドをチェックしました:window.openによって以前に開かれたウィンドウを見つけ て、答えが示唆したように、運がありませんでした。しかし、おそらく私はその考えを誤解しています。

私がしたことは:

私が作成しました

function tjek_ClosePlayer()
{
var playerUrl = 'custom_inserts/custom_player.php';
var mainPlayer= window.open('', 'mainPLayer', 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=605, height=100') ;
if(mainPLayer.location == 'about:blank' ){ mainPlayer.location = playerUrl ; }
mainPLayer.close();
}

次に、更新されたページから関数 onclick を呼び出します。運がない。

誰?

4

1 に答える 1

0

親ウィンドウを閉じると、ポップアップへの参照は実際に破棄されます。これは、コードでは制御できないものだと思います。

できることの 1 つは、ポップアップを開くときに Cookie を書き出すことです。これにより、ポップアップは定期的にチェックして対応することができます。

X='opened'例:ポップアップを開く前に、名前付きの Cookie を書き出します。ポップアップで の値を定期的にチェックし、Xと等しいことが判明し'close'たら、Cookie を削除してポップアップ ウィンドウを閉じます。window.close()

注:親ページとポップアップ ページが同じドメインから提供されている場合、これは簡単になります。

于 2012-09-06T16:00:23.337 に答える