Problem med loadMovie i Flash

Tråden skapades och har fått 6 svar. Det senaste inlägget skrevs .
1

Jag har suttit och knåpat ihop ett bildspel i Flash som dynamisk laddar bilder med hjälp av funktionen loadMovie. Brydde mig inte om att testa så mycket i webbläsare förrän precis i slutet och då visade det sig att ingenting fungerade i ett flertal webbläsare. Jag lokaliserade felet till loadMovie-funktionen men kan inte komma på vad jag ska göra för att få det att fungera. Kan någon med lite kännedom om actionscript säga vad det är för fel på följande kod:

_root.onLoad = function() {
  _root.createEmptyMovieClip("myclip", 0);
  myclip.loadMovie("url");
}

där "url" är sökvägen till någon godtycklig jpg-fil (har prövat både exakta och relativa sökvägar utan resultat). Koden placeras i ett helt nyskapat projekts första ruta men fungerar bara fullt ut i IE (till både mac och pc). I Opera till mac kan man se filmen om man ser den genom en webbserver men inte om man ser den lokalt. I Firefox och Safari fungerar det varken eller.

Flash-filmen är gjord i Flash MX och alla webbläsarna använder den senaste versionen av Flash-pluginen. Jag kan inte för mitt liv förstå vad som är fel, antagligen något väldigt grundläggande eftersom jag inte kan hitta någon annan med samma problem när jag googlar på det...

  • Medlem
  • Karlstad
  • 2004-08-19 09:53

Jag har inte en susning om sånt här, men dristar mig att ändå skjuta iväg ett förslag, eftersom detta påminner om ett liknande problem som en del stöter på när dom gör vanliga webbsidor med t.ex. JavaScript:

Om filer har (korrekt) doctype xhtml, så kan en del läsare vägra acceptera triggers med versaler. T.ex. "onLoad" ska vara "onload" osv.

nu är jag lite rusten i actionscript (tack o lov; skönt att slippa det), men myclip.loadMovie("url") ser inte helt korret ut, eftersom du säger åt den att ladda en film vid namn url. just nu ger du ju den en sträng, om du tar bort "" så ger du ju den en variabel.
Dessutom måste du nog passa variabeln i funktionen också..

  • Medlem
  • Linköping
  • 2004-08-19 11:30

Är inte alls så duktig på actionscript men prova med att ladda in filmen en level högre upp istället för root. Alltså:

_root.onLoad = function() {

_root.createEmptyMovieClip("mymovie", 1);

mymovie.loadMovie("url");

}

tror det kan bli lite konstigt om root håller på att laddas, samtidigt som den byts ut mot
ett nytt filmklipp.

Tack för svaren, tyvärr verkar inget hjälpa. Det ska vara onLoad, med "url" menade jag att det spelar ingen roll om jag skriver en relativ sökväg "images/myimage.jpg" eller en exakt sökväg "http://server.com/images/myimage.jpg" och det spelar heller ingen roll vilken level jag laddar bilden i. Däremot verkar det som om det inte är loadMovie som är problemet utan _root.onLoad. I Firefox, Safari etc. så kallas inte den funktionen...

Ska göra ett nytt försök i eftermiddag. Är det någon som känner till en actionscript/flash tutorial som är riktad mot programmerare? Jag känner inte att jag har greppat vissa fundamentala aspekter såsom scope, levels osv. men jag vill ogärna läsa hur man gör en for-loop. En tutorial som beskriver skillnaderna mellan actionscript och godtyckligt annat (riktigt) programmeringsspråk vore toppen, finns en sådan?

är du säker på att funktionen inte körs? kör en trace("foo"); (outputtar texten foo (eller vad du nu vill) till logfönstret.
Att det inte funkar i vissa läsare låter ju konstigt, så länge flashplugin är mer eller mindre samma version ska det ju funka likadant överallt.

  • Medlem
  • Stockholm
  • 2004-08-19 14:40

Hmm, ja - inte skall Flashfilmen funka olika i olika webbläsare - såvida du inte blandat in en massa javascript i det hela, men det har du väl inte?

Kolla t ex denna slideshow,
http://www.flashkit.com/tutorials/Dynamic_Content/Flash_MX-Joachim_-777/index.php

Tyckte jag var rätt basic och enkelt gjord.

1
Bevaka tråden