Обходите IE всплывающее окно, которое вы просматриваете ...

Есть ли способ обойти следующее всплывающее окно IE:

Просматриваемая веб-страница пытается закрыть окно. Вы хотите закрыть это окно? Да | Нет

Это происходит, когда я добавляю window.close () к событию onclick элемента управления asp.net.

10.12.2008 20:04:20
3 ОТВЕТА
РЕШЕНИЕ

Ваш код JavaScript может закрыть только окно без подтверждения, которое ранее было открыто window.open (). Это преднамеренная мера предосторожности, поскольку скрипт, работающий на веб-странице, не владеет окном и, закрыв его, удаляет историю просмотра в этом окне.

Обходной путь - это либо иметь «страницу приветствия», либо иным образом какую-то страницу, которая всплывает в окне, которое вы хотите закрыть с помощью window.open, или попросить пользователей изменить настройки безопасности своего браузера, чтобы позволить вашему приложению закрыть свои окна.

11
10.12.2008 20:12:23
Веб-страница была создана пользователем, щелкнув ссылку в электронном письме, отправленном приложением.
Michael Kniskern 10.12.2008 20:25:11
Вы можете попробовать сделать ссылку, например, <a href=" your.web.app.com "onClick="window.open(' your.web.app.com/' ); return false" /> Нажмите меня </a> , Но я сомневаюсь, что многие почтовые клиенты будут работать с JavaScript. К сожалению, я думаю, вам не повезло.
Tmdean 10.12.2008 20:30:38
Вы правы, мне не повезло. Мне пришлось реализовать другое решение.
Michael Kniskern 10.12.2008 22:51:59

Для этого есть взлом.

для вызова IE:

window.open('close.html', '_self');

тогда в close.html все, что вам нужно, это:

<script>window.close();</script>

Поскольку это, по сути, открывает всплывающее окно, в окне с тем же именем, когда открывается «новое» окно, оно имеет «открывающее окно» и, следовательно, может закрываться.

7
10.12.2008 20:56:15
Я бы добавил вызов window.open к событию onClick тега привязки. Смотрите комментарий Tmdean в ответе 1?
Michael Kniskern 10.12.2008 21:03:35
Я попробовал ваше решение, но оно не будет работать в нашей среде, потому что в нашем почтовом клиенте отключен JavaScript. Спасибо за вклад.
Michael Kniskern 10.12.2008 22:36:59

В открывшемся всплывающем окне напишите следующее

var objWin = window.self;
objWin.open('','_self','');
objWin.close();
23
15.11.2011 11:13:29
Спасибо ... Это сработало для меня, когда я получал это всплывающее окно в IE9.
khichar.anil 20.04.2015 08:29:57