Ver Mensaje Individual
  #5 (permalink)  
Antiguo 18/11/2008, 06:10
Luisfa
 
Fecha de Ingreso: noviembre-2008
Mensajes: 10
Antigüedad: 16 años
Puntos: 0
Respuesta: Duda simple sobre variables

He usado arrays como dices Veckman, pero el problema sigue ahí. Creo que ahora podré exponerlo de una forma más limpia y clara:

Código:
var button = new Array();
var content = new Array();
var Toggle = new Array();
  	for (x=1;x<lis.length+1;x++){
  		button[x] = $('button'+x);
		content[x] = $('contentElement'+x);
		Toggle[x] = new Fx.Style('contentElement'+x, 'height',{duration: 500});
  	}

button[1].addEvent('click', function(){
  if(content[1].getStyle('height').toInt() > 0){
 	 Toggle[1].start(0);
  }else{
     Toggle[1].start(c1Height);
  }
  return false;
});
Esto así tal cual funciona bien. Pero metido el addEvent dentro del FOR deja de funcionar:

Código:
for (x=1;x<lis.length+1;x++){
  	button[x] = $('button'+x);
	content[x] = $('contentElement'+x);
	Toggle[x] = new Fx.Style('contentElement'+x, 'height',{duration: 500});

        button[x].addEvent('click', function(){
              if(content[x].getStyle('height').toInt() > 0){
 	            Toggle[x].start(0);
              }else{
                    Toggle[x].start(c1Height);
              }
           return false;
       });
}
¿Cual es la diferencia?