簡體   English   中英

如何知道窗口是否打開-PHP / Javascript?

[英]how to know whether window is opened - PHP/Javascript?

有一個聊天按鈕,當用戶單擊該聊天按鈕時,將打開一個新窗口,兩個用戶都可以聊天

當有任何用戶從應用程序注銷時,我怎么知道聊天窗口是否仍處於打開狀態?

並提示“聊天窗口仍處於打開狀態”,然后關閉聊天窗口...

聊天窗口的名稱: chat<?=$user->username?> ...

我正在跟蹤用戶何時注銷,而其他嘗試發送消息。...然后我給他一條消息並關閉該窗口

代碼打開一個窗口

win = window.open('../chat/index.php?user=<?=$uname->username?>','chatApp<?=$uname->username?>','width=400, height=500');

用戶單擊注銷時,我需要關閉聊天窗口嗎? 這個代碼對嗎?

echo "<script>win.close();</script>";

只要打開彈出窗口的窗口不會重置[關閉,刷新,回發]並殺死該窗口對象,您可以執行以下操作來維護創建的窗口。

  var winPop = {}

  function openPop( username, url ){
      if(winPop[username]){
          closePop(username);
      }
      winPop[username] = window.open( url );
  }

  function closePop( username ){
      if(winPop[username] && !winPop[username].closed){
          winPop[username].close();
          winPop[username] = null;
      }
  }

  function killAllPop(){
      for(var win in winPop){
          closePop(win);
      }
  }

如果打開的窗口失去了窗口對象,那么您會很不走運,而父級會關閉它,除非您在onunload或onbeforeunload上進行清理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM