Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to control a flash film with JS/jQuery

i have a project where i have a movie.swf (AS2) and some buttons with js/jQuery in the html part. Now i want the buttons to control the flash. For Example pressing Button1 would do a gotoAndPlay(1) and Button2 gotoAndPlay(150) Button3 gotoAndStop(450)

The Flashmovie works with Actionscript 2.

like image 883
kalimero Avatar asked Dec 04 '10 11:12

kalimero


2 Answers

You need to have a look at the documentation for ExternalInterface, which provides the link between JavaScript and Flash in a webpage.

The basics run along the lines of importing the library in Flash:

import flash.external.ExternalInterface;

Then you can bind a routine to be called from Javascript by using addCallback():

ExternalInterface.addCallback('stopVideo', stopVideo);

function stopVideo() {
   ...
}

That provides a function called stopVideo() on the flash object on the webpage.

And you can call a Javascript function from Flash by using call():

ExternalInterface.call('updatePlayerInfo', "STOPPED");

That calls a Javascript routine called updatePlayerInfo() with the argument 'STOPPED'.

The AS3 documentation for ExternalInterface is much the same as AS2, I can not seem to locate the AS2 documentation at present.

like image 139
Orbling Avatar answered Nov 09 '22 03:11

Orbling


http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html

external interface will assist you in this. above you'll find the adobe reference, below many questions on the subject. this is the same for AS2/AS3

ExternalInterface

Pass a callback in ExternalInterface

jQuery(this) and ExternalInterface

Is there a way to call a Javascript class method from ExternalInterface?

How to expose the JavaScript interface for an embedded Flash object?

like image 1
Glycerine Avatar answered Nov 09 '22 04:11

Glycerine