У меня проблема в firefox. Мои исследования до сих пор говорят мне, что на самом деле нет надежного способа справиться с моей проблемой, но я хочу спросить на всякий случай.
У меня есть следующий javascript/jquery, чтобы открыть новое окно, вызванное нажатием кнопки на моей странице:
alipayTransactionModalTrigger.click(function() {
NIWindow=window.open("<!--ALIPAY_CONF_REDIRECT_URL-->", "NI payment");
alipayTransactionModal.dialog("open");
});
В Chrome и Firefox это открывает новый фрейм, и фрейм получает фокус. Это хорошо. Однако, если пользователь оставит этот новый фрейм открытым и вернется на исходную страницу. Они могут нажать кнопку, чтобы снова вызвать это событие. Если это происходит, новый фрейм перезагружается, как и должно быть, но в Firefox новый фрейм НЕ перетаскивает фокус на это обновление. Я не уверен, почему он будет перетаскивать фокус при начальной загрузке нового кадра, но не перетаскивать фокус, если кадр обновляется с тем же триггером события. У меня еще не хватило смелости проверить это в IE...
Это одна из тех вещей, которые вы не можете надежно контролировать? Или есть способ сделать это? Обратите внимание: я пытался использовать NIWindow.focus() после начальной строки кода, открывающей окно выше. Неудачно.
Кажется, я читал что-то о возможном использовании предупреждений, но я не был уверен, как реализовать описанное решение, и я читал, что это было немного хакерское решение.
Я мог бы просто всегда открывать новое окно «_blank», и это обеспечивало бы фокус, но URL-адрес недавно открытого фрейма использует параметры, основанные на родительском окне. У меня нет доступа к этому коду, поэтому я не могу добавить проверки, чтобы убедиться, что данные совпадают, пока я не получу ответ от этого перенаправления.