Flash Actionscript 3 - indlæsning af flashvars
Hej eksperter !Jeg er udvikler på et projekt og ved intet om flash andet end at man kan anvende flashvars til at give flash input.
Jeg har fra en anden på projektet fået en flash med 4 billeder.
Jeg har forsøgt at sige til ham at han må lave flashen således at når man klikker på billede 1 gås til en URL, som angivet ved en flashvar. Dermed er der altså brug for 4 flashvars.
Han har så meddelt at det kan han ikke finde ud, hvorfor jeg har googlet lidt og efter lidt tid er kommet fra til følgende actionscript
////////////////////////////////////////////////////7
//
// ACTIONSCRIPT 3.0 / FLASH CS3
//
////////////////////////////////////////////////////7
package
{
import flash.display.MovieClip;
import flash.display.LoaderInfo;
import flash.external.*;
import flash.image.*;
public class Main extends MovieClip {
private var url1:String;
private var url2:String;
private var url3:String;
private var url4:String;
private var my_array:Array=new Array();
public function Main()
{
getHTMLvars();
url1 = my_array[0];
url2 = my_array[1];
url3 = my_array[2];
url4 = my_array[3];
// Make sure the images are called image1, image2, image3 and image4
_root.image1.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandlerUrl1);
_root.image2.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandlerUrl2);
_root.image3.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandlerUrl3);
_root.image4.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandlerUrl4);
}
public function mouseDownHandlerUrl1(event:MouseEvent):void {
ExternalInterface.call("goToURL", url1);
}
public function mouseDownHandlerUrl2(event:MouseEvent):void {
ExternalInterface.call("goToURL", url2);
}
public function mouseDownHandlerUrl3(event:MouseEvent):void {
ExternalInterface.call("goToURL", url3);
}
public function mouseDownHandlerUrl4(event:MouseEvent):void {
ExternalInterface.call("goToURL", url4);
}
private function getHTMLvars():void
{
var value:String;
var obj:Object=LoaderInfo(root.loaderInfo).parameters;
for (value in obj)
{
id=String(obj[value]);
my_array.push(id);
}
}
/////////////////////////////////////////////////////////////////
//
// In the HTML there needs to be a callback called goToURL:
//
// <script language="javascript">
//
// function goToURL(url) {
// document.location.href = url;
// }
//
// </script>
//
/////////////////////////////////////////////////////////////////
}
}
Jeg kan installerere Flash CS3 i en trial (har den ikke installeret nu), men før jeg gør det vil jeg gerne vide, om ovenstående kode vil virke og hvad der evt. skal rettes for at få det til at virke ?
Grunden til at jeg anvender ExternalInterface er at nogle af URLerne evt. skal åbne i popup og det kan jeg så styre via javascript.
Derudover: Hvor skal dette sættes ind ?
Henrik