Можно ли подтвердить onunload, чтобы открыть новый URL-адрес в том же окне?

это мой первый пост, и я новичок в JS, поэтому, пожалуйста, простите мое невежество...

Вот мой вопрос, он состоит из двух частей:

1.) В onunload мне нужно оповещение, которое спрашивает пользователя, не хотят ли они перейти на соответствующий URL-адрес. Код, который я использую, работает, но он открывает URL-адрес в новом окне, и это может быть заблокировано блокировщиком всплывающих окон, даже если пользователь согласился. Есть ли способ открыть его в том же окне и отключить блокировку всплывающих окон?

2.) есть ли способ вынести функцию onunload из тега body и поместить ее в скрипт?

Вот код, который я использую:

<script language=javascript>
function confirmit()
{
var closeit= confirm("Before you go would you like to add your press kit to the Search Press Kits database?");
if (closeit == true)
{window.open("http://NEWURLHERE.com");}

else
{window.close();}
}
</script> 

</head>

<body onunload="confirmit();"> 
peace
</body>

Заранее спасибо,

Дэн


person Dan Peschio    schedule 11.05.2010    source источник


Ответы (1)


  • Если бы был способ обойти блокировщик всплывающих окон, это был бы плохой блокировщик всплывающих окон.
  • Насколько я знаю, вам нужно всплывающее окно, потому что при выполнении onUnload исходное окно может быть уже закрыто.
  • #P1# function confirmit() { var closeit= confirm("Прежде чем вы уйдете, не хотели бы вы добавить свой пресс-кит в базу данных Search Press Kits?"); if (closeit == true) {window.open("http://NEWURLHERE.com");} else {window.close();} } window.onunload = подтвердить
person Raphael Michel    schedule 11.05.2010
comment
Эй, если бы я использовал команду beforeonunload, это позволило бы мне загрузиться в то же окно и не нуждаться во всплывающем окне? - person Dan Peschio; 11.05.2010
comment
Не знаю, но у меня есть для вас совет: попробуйте! Сделай это! Увидишь, получится ли :-) - person Raphael Michel; 11.05.2010
comment
AFAIK beforeonunload поддерживается не всеми браузерами! Но попробуй ;-) - person Raphael Michel; 11.05.2010
comment
поэтому в сценарии, который вы мне дали, я бы изменил window.onunload = confirmit на window.onbeforeunload = confirmit - person Dan Peschio; 11.05.2010