Comunidad de diseño web y desarrollo en internet online

como programo en as3 mas de un botón que me dirijan a diferentes links

Citar            
MensajeEscrito el 12 Ene 2012 11:21 pm
Hola.

Estoy programando mi primer sitio en flash con Action Script 3.0
Y sabiendo que las acciones solo se pueden programar en un frame, me topé con un pequeño problema ya que tengo un menú con 10 botones que deben dirigirme a sus respectivos URL's.

Aquí está el código que utilizé para programar mi boton de inicio.

inicio_b.addEventListener(MouseEvent.CLICK, abrir);

function abrir(e:MouseEvent):void {
navigateToURL(new URLRequest("rocktape.html"));
}


Y funciona muy bien. El problema es que cuando quiero agregar acciones para los otros botones, lo intento de esta manera.

inicio_b.addEventListener(MouseEvent.CLICK, abrir);

function abrir(e:MouseEvent):void {
navigateToURL(new URLRequest("inicio.html"));
}

comofunciona_b.addEventListener(MouseEvent.CLICK, abrir);

function abrir(e:MouseEvent):void {
navigateToURL(new URLRequest("comofunciona.html"));
}


Y al publicar el swf se repiten los frames que tengo antes y se hace un loop, (como si no tuviera un STOP) y me sale este error:

1021: Definición de función duplicada.

Por omarsangrau

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 13 Ene 2012 03:24 am
Si entendí el problema es que estas usando la misma función para los diferentes botones, si lo quieres hacer de ese modo tenes que poner una "case" o "if" para diferenciar el botón pulsado y cambiar la acción dependiendo de el.
Si no lo que tenes que hacer es crear otras funciones ej:

Código :

 
boton.addEventListener(MouseEvent.CLICK, abrir);
boton1.addEventListener(MouseEvent.CLICK, abrir1);
boton2.addEventListener(MouseEvent.CLICK, abrir2);

function abrir(e:MouseEvent):void {

navigateToURL(new URLRequest("inicio.html"));
}

function abrir1(e:MouseEvent):void {
navigateToURL(new URLRequest("inicio1.html"));
}

function abrir2(e:MouseEvent):void {
navigateToURL(new URLRequest("inicio2.html"));
}


o como otra opcion puedes

Código :

boton.addEventListener(MouseEvent.CLICK, abrir);
boton1.addEventListener(MouseEvent.CLICK, abrir);
boton2.addEventListener(MouseEvent.CLICK, abrir);

function abrir(e:MouseEvent):void {

if (e.name =="boton"){ navigateToURL(new URLRequest("inicio.html"));}
if (e.name =="boton1"){ navigateToURL(new URLRequest("inicio1.html"));}
if (e.name =="boton2"){ navigateToURL(new URLRequest("inicio2.html"));}
}

 


Algo asi.

saludos Maxx

Por MaxiiSan20

Claber

168 de clabLevel



Genero:Masculino  

Montevideo

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.