2012-01-21 4 views
0

Я хочу открыть всплывающее окно при первом посещении. Если всплывающее окно закрыто, я хочу снова открыть всплывающее окно при следующем обновлении. Я пробовал с куки-файлами, но я не мог понять, как получить уведомление о закрытии окна, чтобы удалить файл cookie.Как узнать, открыто ли окно с заданным именем?

Можно ли узнать, открыто ли окно с помощью window.name?

как

if (window.name==MsgWindow) 
{ 
    openWin(); 
} 

function openWin() 
{ 
    myWindow=window.open('','MsgWindow','width=200,height=100'); 
    myWindow.document.write("<p>This window's name is: " + myWindow.name + "</p>"); 
} 

ответ

0

Если вы хотите, событие, которое срабатывает перед закрытием окна, вы можете попробовать window.onbeforeunload

0

вы можете сделать что-то вроде ниже

var myWindow = ""; 

window.onbeforeunload = function(){ 
    if(myWindow == "" || myWindow.closed){ 
      openWin(); 
    } 
}; 

function openWin(){ 
    myWindow=window.open('','MsgWindow','width=200,height=100'); 
    myWindow.document.write("<p>This window's name is: " + myWindow.name + "</p>"); 
} 
+0

попы окно не должно обновляться на каждом главном окне refresh.please прочитать мой комментарий юлианских – Gowri

+0

обновленного ответа ... попробовать его сейчас. –

+0

pop up не подходит для меня – Gowri

1

Я не думаю, что нет прямой метод проверки того, открыто ли окно, если у вас есть только имя окна.

Однако, для вашего случая вы можете сделать следующее:

// get reference to 'MsgWindow' (will open a new blank window if popup has been closed) 
var popupWindow = window.open('', 'MsgWindow', 'width=200,height=100'); 

// keep popup window in background 
window.focus(); 

// if popup window is blank (= has been closed before), load content 
if (popupWindow.location.href == "about:blank") { 
    popupWindow.location.href == /* your popup url here */; 
} 
+0

Я пробовал ваше решение, но не повезло. На самом деле у моего всплывающего окна есть плеер, чтобы играть песню. Поэтому, когда вы открываете сайт, всплывающее окно начнет воспроизведение песни. игрок не должен вмешиваться в навигацию по основным окнам. Это то, что я делаю. – Gowri

Смежные вопросы