Comunidad de diseño web y desarrollo en internet online

codigo que no funciona

Citar            
MensajeEscrito el 07 Jul 2008 07:45 pm
use el código que encontré aquí mismo y lo reforme... debo confesar que no tengo idea de lo que hice, pero la voz en mi cabeza dice que debería funcionar

ORGINAL

penHolder escribió:

mas practico:

Código :

var vinculos:Array = new Array("chevrolet", "hiundai", "ford", "renault");
for(var i:Number = 0; i <= vinculos.length; i++){
  this["btn_"+vinculo[i]].onRelease = function (){
    loadMovieNum(vinculos[i]+".swf", i);
  };
};

*nota: cada boton debe estar instanciado como "btn_chevrolet", btn_hiundai", etc..


MODIFICACION: se supone que la modificación hace que un boton controle una carga y una animacion

Código :

var vinculos:Array = new Array("inicio", "pedidos", "collares", "aderezos", "pulseras", "anillos");
for(var i:Number = 0; i <= vinculos.length; i++){
  this["btn_"+vinculo[i]].onRelease = function (){
    loadMovie(vinculos[i]+".swf", contenendor);
  };
  
   this["btn_"+vinculo[i]].onRollOver = function (){
    gotoAndPlay ("clip_"+vinculos[i], 1);
   };
  
};

Por daidalos

Claber

126 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2008 08:20 pm
Hola,

PAra que te funcione el código necesitas tener lo siguiente.

Rercursos a cargar, con el nombre exacto así:

inicio.swf
pedidos.swf
...

Estos deben estar en la misma carpeta del swf padre.

Por otro lado, cuando dices:

Código :

gotoAndPlay ("clip_"+vinculos[i], 1);


Estamos hablando de escenas con nombres como:

clip_inicio
clip_pedidos

Acá veo algo raro, porque quieres cambiar de escena en el evento rollOver. Si haces esto, posiblemente los botones ya no esten (dependiendo de la estructura del archivo) cuando vas a la otra escena.

Ok, contanos más para dar una mejor respuesta.

Suerte

Por miliciano

50 de clabLevel



Genero:Masculino  

Colombia

firefox
Citar            
MensajeEscrito el 08 Jul 2008 03:47 pm
La linea dentro del onRelease nunca va a funcionar:

Código :

loadMovieNum(vinculos[i]+".swf", i);

ya que esta usando una variable definida fuera de la función, aunque lo hayas copiado de otro lado, esta mal.
Si quieres usar el valor de "i" dentro de la función, entonces debes guardar su valor en el boton, y usarla en la función:

Código :

var vinculos:Array = new Array("inicio", "pedidos", "collares", "aderezos", "pulseras", "anillos");
for(var i:Number = 0; i <= vinculos.length; i++){
  this["btn_"+vinculo[i]].nBtn = i;
  this["btn_"+vinculo[i]].onRelease = function (){
    loadMovie(vinculos[this.nBtn]+".swf", contenendor);
  };
  
   this["btn_"+vinculo[i]].onRollOver = function (){
    gotoAndPlay ("clip_"+vinculos[this.nBtn], 1);
   };
  
};

Por gabynufe

Claber

446 de clabLevel



 

México, D.F.

msie7
Citar            
MensajeEscrito el 08 Jul 2008 04:26 pm
Estoy deacuerdo con gaby nufe, a mi particularmente me gusta hacerlo así:

Código :

var vinculos:Array = new Array("inicio", "pedidos", "collares", "aderezos", "pulseras", "anillos");
for(var i:Number = 0; i <= vinculos.length; i++){
  mc = this["btn_"+vinculos[i]];
  mc.movie = vinculos[i];

  mc.onRelease = function (){
    loadMovie(this.movie+".swf", contenendor);
  };
  
   mc.onRollOver = function (){
    gotoAndPlay ("clip_"+this.movie, 1);
   };
  
};


De esta forma es un poco más eficiente, ya que se guarda directamente el valor que queremos usar al presionar el botón.

Además agregué la posibilidad de tener la referencia en una variable (mc), para facilitar la lectura del código y para evitar tener que interpretar el valor que ya conocemos varias veces.

Código :

  mc = this["btn_"+vinculo[i]];


Ok, suerte

Por miliciano

50 de clabLevel



Genero:Masculino  

Colombia

firefox
Citar            
MensajeEscrito el 10 Jul 2008 04:45 am
muchas gracias por sus respuestas, estoy montandolas, apenas termine les informo de los resultados

Por daidalos

Claber

126 de clabLevel



 

firefox

 

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