Veamos, tengo creado el juego de MEMO PAREJAS (el de buscar y encontrar 2 cartas iguales) "Creado en Equipos en Clase" Esta es una parte de código miá que no comprendo porque no va. El juego funciona perfectamente pero para ello hay un While que hace el barrido de imágenes y en función a lo que diga una variable (cantidad) se decide el tamaño del tablero. Para entenderlo:
Lo que hace esta variable es coger unicamente la cantidad necesaria de imágenes para hacer la mezcla de imágenes y que no rellene celdas que no están en pantalla, que si el tablero es de 6 casillas pues variable es 6 y asi luego el while solo coge 3 imágenes y las repite 2 veces cada una y las otras celdas quedan en blanco y sin rellenar.
La cosa esta aquí.
Código:
Al hacer click en el radio, aqui por ejemplo le digo que es 24. si le pongo un Alert que me muestre cantidad evidentemente me dice que es 24. sin embargo, luego mas abajo de esto tengo puesto la variable (cantidad) que ahora al ser 24 me debería generar un tablero de 24 casillas con las imágenes del array completamente mezcladas sin embargo NO LO HACE, la variable (cantidad) es igual a 0, el primer valor de la variable.var cantidad = 0; $("input[value='super_hard']").click(function(){ $("#r4, #r3, ... , #22, #23").show("slow"); cantidad = 24; }); while (cantidad--){ aleatorio = Math.floor(Math.random()* (cantidad+1)); $("#" + cantidad).css("background-image", "url("+imagenes[aleatorio]+")"); // <-- Aqui CANTIDAD Es 0 posicion.unshift(imagenes[aleatorio]); imagenes.splice(aleatorio, 1); }
Entonces la pregunta es, ¿Porque si le digo que (cantidad = X numero) no me lo coge?. Hay otras variables que están igual que esta y funcionan. No lo entiendo :(. Ni siquiera mi profesor ha sabido porque no cogía el valor cuando otras variables que están fuera cogen un valor que se le indica dentro de una función.
Gracias de antemano.
EDIT: El Return no funciona, ya que el While solo se ejecuta si cantidad == al numero para que asi While se ejecute y haga el barrido, sino lo hace con cantidad = 0 y no añade ni una imagen en la tabla :(.