Никак не мог найти возможность позволяющая мне открывать popup окна из Adobe Flash Но я упорный и все же нашел, вот эту статейку. Хотя у меня немного подругому получилась строка И самое важное что локально НЕЛЬЗЯ тестить этот скрипт всплывающее окно в flash Либо закачать в интернет и через http обращаться или в Денвер локально. Создание всплывающего окна браузера при помощи Flash Введение В стандартной HTML-странице, всплывающие окна браузера открываются и контролируются при помощи функций JavaScript. Окна браузера так же можно открыть и закрыть при помощи Flash-клипа, но, так как окна - это компоненты браузера, то Flash должен соединяться с браузером и управлять им для открытия новых окон. Методы Следующие методы отличаются по уровню сложности контроля. Некоторые из описываемых методов совместимы не со всеми браузерами. Метод | Сложность | Совместимость браузера | GetURL | Самый лёгкий, но не позволяет контролировать окна | Работает со всеми браузерами | GetURL:"javascript" | Простой и непротиворичевый | Не работает с Internet Explorer 3.0 или более ранними в Windows. Не работает с Internet Explorer 4.5 или более ранними в Macintosh. | FSCommand | Более сложен | Работает с включёнными в браузер ActiveX и LiveConnect (Internet Explorer 4.0 или более поздний для Windows и Mac, а так же Navigator 3.x и 4.x) |
GetURL Этот метод использует команду GetURL, что бы создать новое, пустое окно браузера. Этот метод прост, работет со всеми браузерами и не требует использования JavaScript. Но этот метод не обеспечивает контроль над расположением окна, его размером, наличием полос прокруток и панели инструментов. Добавление команды getURL во Flash: Выделите нужный ключевой кадр и вставьте в него следующий код: getURL("http://www.macromedia.com", "_blank");
Или выделите нужную кнопку и вставьте в неё: on (release) { getURL("http://www.macromedia.com", "_blank"); }
Опубликуйте Flash-клип и HTML-страницу. GetURL:"javascript" Этот метод использует команду getURL, что бы вызвать функцию JavaScript, которая добавляется в HTML-страницу после опубликования. Делается это просто и требует минимальных знаний JavaScript, но такая конструкция будет работать не со всеми браузерами. Обратитесь к таблице Методов выше, что бы уточнить детали совместимости с различными браузерами. Часть первая: Создание клипа во Flash Выделите нужный ключевой кадр и вставьте в него следующий код: getURL("javascript:openNewWindow(`http://www.macromedia.com`,`thewin`, `height=400,width=400,toolbar=no,scrollbars=yes`) ");
Или выделите нужную кнопку и вставьте в неё: on (release) { getURL("javascript:openNewWindow(`http://www.macromedia.com`,`thewin`, `height=400,width=400,toolbar=no,scrollbars=yes`) "); }
Моя строка была такой
on (release) { getURL("javascript:window.open(`form.html`,`example`,`scrollbars,resizable,width=485,height=450`);void(0);"); }
Заметьте, что вторая и третья строки (там, где getURL… и следующая под ней) - это на самом деле одна строка - она разделена на две для наглядности. Обязательно соедините их в одну строку без пробелов, иначе будет ошибка. В этой функции вы могли бы задать свои значения для URL, размеров окна, наличия панели инструментов и полос прокруток, но в этом примере не рекомендуется менять данные значения. Опубликуйте Flash-клип и HTML-страницу. Часть вторая: Добавление JavaScript в HTML-страницу - Откройте опубликованную в первой части HTML-страницу, используя один из HTML-редакторов (можно использовать Блокнот).
- Скопируйте этот код:
- Вставьте его между тегами HEAD в HTML-коде.
- Сохраните HTML-документ и протестируйте страницу в браузере.
Замечание: Если HTML-страница снова будет опубликована из Flash, то новые данные будут записаны поверх изменений, и вставлять код придётся заново.
Что делает данная функция JavaScript? - Содержание команды getURL сообщает JavaScript`у вызвать функцию `openNewWindow`, передавая следующую информацию в скрипт:
javascript:openNewWindow | Сообщает JavaScript`у вызвать функцию openNewWindow | `http://www.macromedia.com` | URL для загрузки в новое окно | `thewin` | Имя окна | height=400 | Установка высоты окна в 400 пикселей | width=400 | Установка ширины окна в 400 пикселей | toolbar=no | Не отображать панель инструментов. Доступные опции: yes и no | scrollbars=yes | Отображать полосы прокрутки. Доступные опции: yes и no |
Одиночные кавычки (апострофы) в тексте важны для разделения трёх секций параметров: function openNewWindow(URLtoOpen, windowName, windowFeatures) | URLtoOpen | `http://www.macromedia.com` | windowName | `thewin` | windowFeatures | `thewin`,`height=400,width=400,toolbar=no,scrollbars=yes` |
При вызове, используя переданную информацию, окно открывают следующие функции JavaScript: Function openNewWindow(URLtoOpen, windowName,windowFeatures) | Создаёт функцию, называемую "openNewWindow", которая принимает три параметра, выделенные цветом выше. | newWindow=window.open(URLtoOpen,windowName,windowFeatures); | Создаёт новое окно, называемое "newWindow", используя метод `open` языка JavaScript и аргументы, описанные выше. |
FSCommand Этот метод использует команду FSCommand для того, что бы сработала JavaScript-функция в HTML-странице, создающая новое окно. Функция JavaScript добавляется в страницу после её опубликования, и содержит URL и параметры для нового окна. Этот метод работает не со всеми браузерами. Обратитесь к таблице Методов выше, что бы уточнить детали совместимости с различными браузерами, и не забудьте протестировать данный метод на всех браузерах. Часть первая: Создание клипа во Flash Выделите нужный ключевой кадр и вставьте в него следующий код: fscommand("openWindow");
Или выделите нужную кнопку и вставьте в неё: on (release) { fscommand("openWindow"); }
Опубликуйте Flash-клип и HTML-страницу. Часть вторая: Добавление JavaScript в HTML-страницу - Откройте, опубликованную в первой части, HTML-страницу используя один из HTML-редакторов (можно использовать Блокнот).
- В HTML-коде найдите следующую строку:
// Place your code here... - Замените эту строку следующим кодом:
{if(command=="openWindow"){ openNewWindow()}} function openNewWindow(){setTimeout(window.open(`http://www.macromedia.com`,`newwindow`,`height=200,width=300,toolbar=no`)),0} - Сохраните HTML-документ и протестируйте страницу в браузере.
Замечание: Если HTML-страница снова будет опубликована из Flash, то новые данные будут записаны поверх изменений, и вставлять код придётся заново.
Что делает данная функция JavaScript? {if(command=="openWindow"){openNewWindow()} В этой строке происходит чтение команды, посланной из Flash. Если команда - openWindow, то запускается функция "openNewWindow()". Function openNewWindow(){setTimeout(window.open(`http://www.macromedia.com`,`newwindow`,`height=200,width=300,toolbar=no`)),0} Это такая же функция, которая была описана выше, в шаге getURL. Здесь так же добавлен метод ожидания времени языка JavaScript для предотвращения несовместимости с некоторыми браузерами.
|