Communicatie tussen 2 swf's

Pagina: 1
Acties:

  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
Het is de bedoeling dat er pagina komt waarin boven een aparte swf staat met een menu en wanneer hier op een button geklikt wordt er links iets met het filmpje gebeurd(dat is tevens ook een apart swf).

Probleem:
Ik heb de documentatie van action script in Flash MX zelf gelezen en op de macromedia site, diverse voorbeelden op inet bekeken maar op een of andere manier wordt de javascript functie niet aangeroepen?
Vergeet ik iets of begrijp ik de documentatie niet goed, want als je gebruik maakt van de fscommand in flash wordt er in html toch een functie aangeroepen?

Wat heb ik geprobeerd:
- De fscommand diverse waardes meegegeven
- De javascript functie direct na de body gezet en in de head gezet.


De code achter de button:

on (press) {
fscommand("knop", 1);
}


De html pagina:

HEt is geen php code maar zo is het even wat leesbaarder!!!!


PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" name="knop" width="550" height="400" id="knop">
  <param name="movie" value="knop.swf">
  <param name="quality" value="high">
  <embed src="knop.swf" width="550" height="400" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" 
type="application/x-shockwave-flash" name="knop" swliveconnect=true></embed></object>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" name="movie2" width="550" height="400" id="movie2">
  <param name="movie" value="test.swf">
  <param name="quality" value="high">
  <embed src="test.swf" width="550" height="400" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" 
type="application/x-shockwave-flash" name="movie2" swliveconnect=true></embed></object>
  
<script> 

function knop_DoFSCommand(command, args) {
    var movie = window.document.movie2;
    movie.GoToFrame(args);
    movie.Play();
}

</script>
  
</body>
</html>

[ Voor 66% gewijzigd door Sjadow_ op 23-06-2004 08:40 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Nu online

gorgi_19

Kruimeltjes zijn weer op :9

Javascript, HTML, Flash, alles wat clientside in het algemeen is, hoort in Webdesign & Graphics

>> Webdesign & Graphics

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Ik kan je helaas niet verder helpen aangezien ik de Fla's van iets dergelijks kwijt ben geraakt, echter ik wou toch even reageren om te bevestigen dat het wel degelijk kan!

Heb nl. ooit precies hetzelfde moeten maken.

  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
@mod, sorry voor het verkeerd plaatsen en bedankt voor het verplaatsen :)

Ik weet idd dat het kan, want ik heb paar voorbeelden op inet gezien die precies hetzelfde doen, ik kan alleen niet vinden waar ik de fout maak of waar ik iets vergeet en daar baal ik een beetje van, aangezien dit niet echt iets moeilijks is maar tot nu toe veels te veel tijd heeft gekost.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Maak ondertussen wel ff een werkend voorbeeld, maar moet:

code:
1
knop_DoFSCommand

knop_ niet de naam zijn van je movie die het afvuurt?

edit:

Sowieso kan je <script>-tags in je head.

[ Voor 16% gewijzigd door BtM909 op 23-06-2004 09:10 ]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
Ja dat moet idd, tis misschien een beetje vaag, omdat ik de movie knop noem eb de command die ik meegeef ook knop noem,

name/id_DoFSCommand(command,args) is de functie als ik de docs mag geloven.

Als ik in flash het volgende doet hij het ook niet.

on (press) {
fscommand("eencommand", 1);
}


ps: de button die de command fscommand afvuurt zit in knop.swf
BtM909 schreef op 23 juni 2004 @ 09:00:
Maak ondertussen wel ff een werkend voorbeeld, maar moet:

code:
1
knop_DoFSCommand

knop_ niet de naam zijn van je movie die het afvuurt?

[ Voor 7% gewijzigd door Sjadow_ op 23-06-2004 09:12 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Canard
  • Registratie: Oktober 1999
  • Laatst online: 21-05 20:37
Als het puur gaat om communicatie tussen 2 flash movies, dan moet je fscommand snel vergeten!

LocalConnection is de oplossing! zie http://www.macromedia.com...ments/localconnection.htm

  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
@ thnx maar dat had ik al gelezen

@ Canard
ik heb dat ook geprobeerd maar krijg het ook niet aan de praat en ik wil nu toch eigenlijk wel weten hoe dat fsccommand werkt. Ik weet dat het kan
kijk bijvoorbeeld naar dit voorbeeldje.

http://www.ashzfall.com/flash/fscomlib/frameplay.html

  • Canard
  • Registratie: Oktober 1999
  • Laatst online: 21-05 20:37
jammer, ik vind de LocalConnection een simpelere, nettere en beter onderhoudbare oplossing dan fscommand... maar dat is mijn mening :)

Wat was het probleem dan met LocalConnection?

Aangezien je nu ook tegen problemen aanloopt met fscommand is het misschien te overwegen om nog eens naar LocalConnection te kijken. Ik wil je er wel bij helpen.

  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
Probleem bij localconnection is dat het me niet lukt om door te geven dat een andere movie een gedeelte moet afspelen, waarschijnlijk is het vrij simpel, maar tis me nog niet echt gelukt.
Vind het voorbeeld op de site ook niet bijzonder duidelijk ofzo

  • Canard
  • Registratie: Oktober 1999
  • Laatst online: 21-05 20:37
Zoiets zou het moeten worden:

knop.fla
Java:
1
2
3
4
5
6
7
8
9
10
11
12
// functie die uitgevoerd wordt als er op de knop geklikt wordt
this.klik = function(eventObj)
{
   // voer de functie "jouwFunctie" uit in de andere swf
   _parent.knopLC.send("myConnection", "jouwFunctie", arg1, arg2, ...);
}

// koppel functie aan buttonclick
button.setClickHandler("klik", this);

// maak nieuwe connectie
this.knopLC = new LocalConnection("myConnection");


test.fla
Java:
1
2
3
4
5
6
7
8
9
// maak nieuwe connectie
this.testLC = new LocalConnection();
this.testLC.connect("myConnection");

// deze functie word via de connectie door de andere swf aangeroepen
this.testLC.jouwFunctie = function(arg1, arg2, ...)
{
    // je code om iets met het filmpje te doen
}

[ Voor 12% gewijzigd door Canard op 23-06-2004 10:41 ]


  • Sjadow_
  • Registratie: December 2001
  • Laatst online: 05-06-2024
thnx voor de script, ik ga kijken of dit bij mij werkend krijg, ik hou je op de hoogte.
Pagina: 1