Открыть окно из iframe
-
20-09-2019 - |
Вопрос
Это ситуация. Я пытаюсь предоставить услугу, в которой кто -то встраивает на своем веб -сайте Iframe с формой в нем. В конце, когда запрашивается запрос Ajax, я хочу выставить новое окно с благодарственной запиской. window.open не работает, и я предполагаю, что окно-объект принадлежит странице, которая внедряет ее, а не iframe, а затем считается сценарием поперечного сайта. Есть ли другой способ сделать это?
Мысль у меня была, что я могу создавать ссылки с target = "_ new" в моем iframe, и нажимать, что на самом деле выставило бы другое окно. Может быть, я мог бы создать эту ссылку и «щелкнуть»/запустить ее с помощью JavaScript?
У меня есть контроль над тем, что пользователь так потенциально может включить там сценарий, но чем меньше кода, тем лучше.
Какие -нибудь дубли?
Решение
Window.open не работает, и я предполагаю, что окно -объект принадлежит странице, которая внедряет ее
Я так не думаю. window
Как видно из вашего сценария, как правило, будет window
объект документа внутри iframe
.
Более обычно, window.open
При завершении xmlhttprequest будет заблокировано встроенные всплывающие блокировщики браузеров. Они обычно позволяют открывать новые окна в прямом ответе на взаимодействие с пользователем (как правило, в onclick
обработчик события).
Может быть, я мог бы создать эту ссылку и «щелкнуть»/запустить ее с помощью JavaScript?
Нет, иначе все будут делать это, чтобы обойти блокаторы!
Если вы начинаете XHR, и вы знаете, что вам понадобится всплывающее окно в будущем, вам придется открыть его сейчас и поместить немного контента наполнителя, пока XHR не вернется, и в этот момент вы можете обновить его содержимое Анкет