Para "implementar" la opción de "eval", se utilizan [nombredelavariable].
ejemplo:
Código:
Ahora bien, el problema que me encuentro es al utilizar una función común, por ejemplo, para todos los botones de un mismo trabajo. En este caso necesito crear un "setInterval" para cada uno, pero no me deja trabajar con el sistema "eval". Me explico.var boton = "boton1" this[boton].play();
El botón, es un movieClip con un cuadrado que dentro lleva dos mc más, un pequeño preloader animado y otro mc que está vacio, orientado a cargar una imágen jpg.
Cada botón, lleva un nombre de instancia diferente. Ej. boton1, boton2, boton3
Así queria "automatizar" la carga de estas imágenes en los botones.
ejemplo:
Código:
En un punto de la película lo puedo llamar así:function cargaimgboton(boton,img){ this[boton].preloader.play(); this[boton].container.loadMovie(img); i1 = setInterval(this, "int1", 30); int1 = function(){ total = this[boton].container.getBytesTotal(); cargado = this[boton].container.getBytesLoaded(); porcentaje = Math.round(cargado * 100 / total); if(total == cargado || porcentaje >= 99){ clearInterval(int1); this[boton].preloader.gotoAndStop(1); } } };
Código:
Es evidente que no llegan a cargar todas las imágnes, ya que "setInterval" es el mismo nombre para todos.cargaimgboton("boton1","img1.jpg"); cargaimgboton("boton2","img2.jpg"); ...
¿Puedo asignarle un nombre a "setInterval", de la misma manera que lo hago con el "eval" para flash?, ¿o simplemente este "[] eval" está orientado a objetos?
No me digan porqué, pero intenté de sustituir el setInterval por onEnterFrame y no funciona. "undefined" es el resultado de las variables "cargado" y "total". Evidentemente "porcentaje" es "NaN".
Saludos y muchas gracias por todo.