Откройте окно браузера с помощью ExternalInterface и напишите в нем HTML - PullRequest
1 голос
/ 06 ноября 2010

Я могу открыть новое окно, используя window.open() в ExternalInterface.call(), но затем я хочу иметь возможность записать содержимое в новое окно.Поскольку я не могу получить ссылку на окно обратно из вызова window.open(), я не могу ничего сделать с окном после его открытия.

Обратите внимание: у меня нет никакого контроля над HTMLв котором отображается мой SWF.

Кто-нибудь был в этой ситуации раньше?

Обновление: После нескольких часов проб и ошибок я обнаружил, что вы можете выйти из этой ситуации, сохранив окноглобальная ссылка и ссылка на ту же глобальную ссылку, когда вам нужно получить доступ к новому окну.

Ответы [ 2 ]

0 голосов
/ 20 ноября 2010

Это возможно, если вы сохраните имя ссылочной переменной окна javascript. Но вы, возможно, захотите учесть тот факт, что, если у вас нет никакого контроля над HTML, где отображается SWF, вы не можете быть уверены, что доступ к JavaScript не выдаст SecurityError на основе различных политик безопасности. выложены командой flash.

0 голосов
/ 06 ноября 2010

Вы пытаетесь просто представить новую веб-страницу из вашего .swf?если это так, внешний интерфейс не требуется.Вы можете просто использовать navigateToURL:

navigateToURL(new URLRequest("http://www.stackoverflow.com"), "_blank");

, однако, если вы хотите создать всплывающее окно с нестандартным размером и видимостью панели инструментов и полос прокрутки браузера, вы можете вызвать внешний интерфейс следующим образом:1005 *

...