/ / Альтернативний спосіб перевірити, чи Window - це спливаюче вікно - javascript, спливаюче вікно

Альтернативний спосіб перевірити, чи є вікно спливаюче вікно - javascript, спливаюче вікно

У мене є сторінка, яку можна відкрити з будь-якої моєїдомен або як спливаюче вікно, відкрите з іншого домену. На цій сторінці я маю перевірити його за допомогою Javascript, чи він був відкритий як спливаюче вікно, чи він був безпосередньо відкритий URL-адресою, і робити якісь речі.

Зараз я дотримуюся широко запропонованого підходу, використовуючи window.opener атрибут ...

if (window.opener != null)
// It is a popup
else
// It"s not a popup

... але останнім часом я стикався з проблемою IE, яка не заповнює цей атрибут.

Чи може хтось запропонувати мені інший підхід для цього? Випуск IE, ймовірно, неминучий без зміни деяких конфігурацій Windows.

До речі, коли я кажу, що сторінка відкривається як спливаюче вікно, я говорю про " window.open() виклик, який відкриває нове вікно.

Заздалегідь спасибі!

Відповіді:

1 для відповіді № 1

Перевірте document.referrer всередині спливаючого вікна.

var ref = document.referrer;
if (ref.match(/mydomain/i)) {
// page was opened directly
}
else {
// page was opened by other domain
// this is a popup
}