Зная, будет ли window.close () показывать предупреждение безопасности - PullRequest
1 голос
/ 22 октября 2009

В IE7 дочернее окно, открытое с помощью window.open, может закрыться, используя window.close (), но окно, открытое с помощью , покажет предупреждение безопасности, если дочернее окно пытается закрыть себя.

В моем приложении я не знаю, как открывается мое дочернее окно, и мне нужно знать (в коде JavaScript дочернего окна), могу ли я использовать window.close () или нет. Есть ли способ? Другой способ задать вопрос - есть ли в IE способ различать окно, открытое с помощью window.open, и окно, открытое с помощью target = _blank.

Я попытался проверить window.opener, но в обоих случаях там есть значение, поэтому это не позволяет мне различать два случая.

Ответы [ 4 ]

1 голос
/ 22 октября 2009

Попробуйте сравнить window.opener и window.self

0 голосов
/ 22 октября 2009

Источник: Закрыть окно без сообщения в IE7

Это как избежать появления подсказки на странице выше:

function WinClose(){window.open('','_self','');window.close();}

<a href="#" onclick="WinClose();return false;">Close</a>

Это возможный подход для вашей страницы?

0 голосов
/ 22 октября 2009

Если у вас есть контроль над событиями window.open, вы можете дать новому окну имя (я думаю, что это второй параметр). Затем вы можете проверить это имя перед применением window.close ().

0 голосов
/ 22 октября 2009

Просто слепой выстрел, но вы можете попробовать удалить событие onunload в окне, если оно есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...