Страница во всплывающем окне перенаправляется на другой домен, который перенаправляет обратно на страницу результатов. На странице результатов я пытаюсь установить свойство window.opener, чтобы сигнализировать, что платеж одобрен.
Это работает для некоторых пользователей. Однако другие пользователи получают сообщение об ошибке, сообщающее, что window.opener не определен.
Проблему можно воссоздать с помощью этих простых страниц:
index.html
(открывает всплывающее окно)
Код: Выделить всё
function openPaymentWindow() {
win = window.open('popup.html', 'popup');
}
(Перенаправляет на другой домен)
Код: Выделить всё
(перенаправляет обратно на исходный домен)
Код: Выделить всё
(устанавливает свойство на индексной странице)
Код: Выделить всё
function callTop() {
// Here, window.opener (and top.opener) is undefined for some users
window.opener.document.getElementById('result').style.background = 'green';
}
Подробнее здесь: https://stackoverflow.com/questions/174 ... r-redirect
Мобильная версия