On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

Взаимодействие FLASH и JAVASCRIPT

Уильям Брэдберри

В данной статье рассматривается пример взаимодействия
javascript - функций,
включенных в тело HTML- документа и
флэш-ролика, находящегося в этом же документе.

***

Шаг 1.

а) создадим обычный, пустой (пока только основные тэги) , стандартный HTML-документ с помощью любого доступного редактора (в примере - notepad) и назовем его "script.html"

б) во флэш-редакторе создадим новый файл, назовем его "flash.fla", сохраним его в одной дирректории с файлом "script.html", сделаем публикацию (shift+f12) и в результате получим кусочек нужного нам в последствии кода ("flash.html").

в) в документе "script.html" между тэгами <head></head> напишем три функции, которые потом будем вызывать флэш-роликом и передавать им какие-либо значения...


- - - ЧТО К ЧЕМУ - - -

и так:
-- начнем со стандартного заголовка тела ява-скрипта в документе:

<script language="JavaScript">
<!-- первая наша функция -->

<!-- первая функция принимает 3 параметра при вызове ее и выполняется в соответствии с ними-->

<!--
function openNewWindow(myURL,my_width,my_height)
{
<!-- openNewWindow - название функции, my_width - переменная, которая будет передавать/принимать значение ширины, my_height - которая будет передавать/принимать значение высоты -->

<!-- далее код самой функции -->

myNewWindow=window.open(myURL,'sample','toolbar=no,bar=no,location=no,
status=no,menubar=no,scrollbars=no,resizable=no,width='+my_width+',height='+my_height+',top=0,left=0');
}

<!-- код функции в котором: myURL - это URL открываемого нового документа,
myNewWindow - имя нового окна в иерархии,
..остальные параметры отвечают за отсутствие/присутствие элементов интерфейса в новом окне (туллбары, меню-бары и т.д.),
width='+my_width+' - параметр, отвечающий за ширину,
height='+my_height+' - параметр, отвечающий за высоту,
-->

<!-- вторая наша функция - это просто выскакивающие окно с предупреждением, которое мы передадим из флэш-ролика-->

function message(message){
alert(message);
}
<!-- где message - наш передаваемый праметр, сообщение -->

<!-- третья наша функция - закроет открытое первой функцией окошко, обратившись к нему по имени "myNewWindow" -->
function closeMain(){
myNewWindow.close();
}

<!-- закрываем тэг скрипта в документе -->
//--></script>

г) откроем опубликованый ранее файл "flash.html" и скопируем код нашего ролика ,который находится между тэгами <body></body>
и вставим его также между тэгами
<body></body>
в файл "script.html"

д)

закроем файл.

-----------------------
*** код прилагается ***

<html>
<head>
<title>
:code by Willyam Bradberry 2001:
</title>
</head>
<script language="JavaScript">
<!-- первая наша функция -->
<!--
function openNewWindow(myURL,my_width,my_height)
{
myNewWindow=window.open(myURL,'sample','toolbar=no,bar=no,location=no,
status=no,menubar=no,scrollbars=no,resizable=no,width='+my_width+',height='+my_height+',top=0,left=0');
}
<!-- вторая наша функция -->
function message(message){
alert(message);
}
<!-- третья наша функция -->
function closeMain(){
myNewWindow.close();
}
//--></script>
<BODY bgcolor="#000033">

<!-- URL's used in the movie-->
<A HREF=javascript:openNewWindow('temp.html',600,200)></A> <!-- text used in the movie-->
<!--открываем новое окошко открываем предупреждение закрываем открытое окошко --><OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
WIDTH=400 HEIGHT=300>
<PARAM NAME=movie VALUE="flash.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#000033> <EMBED src="flash.swf" quality=high bgcolor=#000033 WIDTH=400 HEIGHT=300 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
</EMBED>
</OBJECT>
</body>
</hmtl>

***********************

шаг 2.

а) откроем наш файл "flash.fla" во flash-редакторе.

б) создадим три произвольные кнопки

(нарисуем произвольную фигуру и нажав f8 выберем button, затем просто сдублируем copy-paste три раза)



в) последовательно вставляем в каждую из кнопок следующие акции:

button1 -

on (release) {
getURL("javascript:openNewWindow('temp.html',600,200)");
}


тут происходит вызов javascript:функции openNewWindow, и передаются параметры

'temp.html' - урл-нового документа
600 - ширина
200 - высота
--------------------------------------

on (release) {
getURL("javascript:message('МОЯ МЕССАГА')");
}

button2 -



тут происходит вызов javascript:функции message, и передаётся параметр "message"
--------------------------------------

on (release) {
getURL("javascript:closeMain()");
}

button3 -



тут просто происходит вызов javascript:функции closeMain
---------------------------------------

на этом все.
делаем публикацию f12 или shift+f12,

открываем "script.html" и жмем на наши кнопочки.


Литература по FLASH