Как создать всплывающее окно в Flex без панели инструментов браузера?

Я пытаюсь запустить всплывающее окно из Flex, но всплывающее окно должно иметь определенные свойства, которые обычно можно указать с помощью JavaScript window.open. Например, во всплывающем окне не должно быть панели инструментов браузера или поля URL.

Я пробовал использовать navigateToURL, который отлично работает, но я не могу найти способ указать свойства всплывающего окна.

Я пробовал использовать ExternalInterface.call, но всплывающее окно блокируется при прямом вызове window.open или даже при создании пользовательской функции JS, которая вызывает window.open.

Помощь!

Спасибо!


person Steve Middleton    schedule 21.08.2009    source источник
comment
Пожалуйста, не надо. Всплывающие окна без панели инструментов / адресной панели - это катастрофа с точки зрения безопасности и удобства использования, поэтому некоторые браузеры теперь не позволяют вам делать это полностью. Большинство вещей, для которых люди раньше использовали всплывающие окна без хромирования, в настоящее время обычно выполняются с помощью всплывающих элементов на странице.   -  person bobince    schedule 22.08.2009


Ответы (3)


Я не думаю, что вообще возможно отключить панель инструментов браузера или поле URL-адреса во многих браузерах (я, конечно, не разрешаю это ни в одном из браузеров, которые я использую).

Если вы используете navigateToURL, почему открываемая страница не может запустить JS, чтобы попытаться отключить панель инструментов и URL-адрес? Я думаю, вы также можете прикрепить атрибуты к URL-адресу, если хотите отправить свойства.

person CookieOfFortune    schedule 21.08.2009
comment
Я почти уверен, что большинство JS-совместимых браузеров поддерживают стилизацию всплывающих окон с помощью метода window.open, но Flex, похоже, не поддерживает это ... и я не уверен, как сделать это на лету ( после того, как окно было открыто) - person Steve Middleton; 24.08.2009
comment
Взгляните на эту страницу: adobe.com/cfusion / communityengine / Вы можете передать параметры javascript функции window.open (). Просто замените на те, которые хотите использовать. Опять же, такие функции (удаление адресных строк и т. Д.) Не будут работать ни в одном браузере, который я использую. - person CookieOfFortune; 25.08.2009


Посетите блог AndrewT о проверке блокировщиков всплывающих окон. Если не заблокирован, то используйте ExternalInterface; в противном случае используйте гибкое всплывающее окно.

Обнаружение блокировщиков всплывающих окон

Или, что еще лучше, используйте модули SWFAddress v2.3 (javascript и AS3). AS3 имеет фасад SWFAddress :: popup (), который проксирует вызов poup на javascript. Вы можете изменить всплывающую функцию SWFAdress.js, чтобы использовать логику Эндрю и возвращать статус. Это было бы наилучшей практикой: использовать превосходную библиотеку SWFAddress от flex для глубоких ссылок, аналитики Google и всплывающих окон.

person Community    schedule 01.09.2009