簡體   English   中英

如何檢查一個彈出窗口頁面是否已在asp.net中打開?

[英]How to check if a pop-up window page is already open in asp.net?

我正在使用JavaScript在asp.net中打開一個彈出窗口。 我想做的是,當彈出窗口已經打開時,它將只設置焦點並刷新彈出窗口,而不是打開一個新的彈出窗口。 否則,必須關閉彈出窗口。

我嘗試了以下代碼,但沒有用..

var winPop = false; 
function PopupCenter(pageURL, title,w,h) 
 { 
   if(winPop && !winPop.closed)
   {  
     winPop.focus();  
   }  
   else
   {  
     var left = (screen.width/2)-(w/2);
     var top = (screen.height/2)-(h/2);
     winPop = window.open(pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
     winPop.focus();     
   }  

} 

提前致謝。

您可以使用window.location.indexOf,並使用它可以從其網址檢查窗口是否打開

根據您的代碼的另一種解決方案是,當您要關閉窗口時將該變量設置為null,然后在該變量為null時檢查該變量是否為null。打開新窗口,否則設置焦點。

祝好運!

->父窗口中的代碼將整個代碼放在父窗口中,例如

var w = null;

然后設置變量,如w = window.open();

然后檢查是否(w!= null)然后打開新窗口,否則什么也不做

->彈出窗口中的代碼,還要小心在彈出窗口中設置w = null

$( window ).unload(function() { w=null; });

子窗口即將關閉時。

暫無
暫無

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

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