Home | Flex and Flash | Flex and Browser | Взаимодействие между двумя Flash роликами

Взаимодействие между двумя Flash роликами

Font size: Decrease font Enlarge font
image

Взаимодействие между Flash роликами, вызов JavaScript из Flash. Использование JS ActiveX функций для управления Flash роликом

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

Ролик с часами и ролик с насосом. Если нажать на стрелку, то часы начнут идти, после некоторого времени стрелка остановится. Насос начнет двигаться при нажатии на его шапку.


При нажатии на кнопку Start вызовем функцию playmovie(), которая запустит оба наших Flash ролика:

function playmovie() {
if (movieIsLoaded(thisMovie(movieName))) {
thisMovie(movieName).Play();
thisMovie(movieName2).GotoFrame(1);
thisMovie(movieName2).Play();
}
}
Более подробную информацию о функциях, работающих с flash контентом можно посмотреть здесь - http://www.adobe.com/support/flash/publishexport/scriptingwithflash/scriptingwithflash_03.html

В ролике с часами, когда значение счетчика дойдет до 50, вызовем JavaScript функцию stopmovie():
function stopmovie() {
if (movieIsLoaded(thisMovie(movieName2))) {
thisMovie(movieName2).TStopPlay("/t");
}
}
Из флеша скрипт вызовем при помощи getURL("javascript:stopmovie()");
Эта функция остановит клип во флеш ролике с насосом.


Пример смотреть тут, исходники - jsflash.zip


В данном уроке использован ActionScript 2.0, при использовании ActionScript 3.0 все остается таким же, только вместо getURL() следует использовать navigateToURL() из ActionScript 3.0

Comments ( posted):

Post your comment comment

Please enter the code you see in the image:


  • email Email to a friend
  • print Print version
  • Plain text Plain text
Tags
No tags for this article
Rate this article
3.67