Foros del Web » Creando para Internet » Flash y Actionscript »

Función para "abrir" ventanas emergentes

Estas en el tema de Función para "abrir" ventanas emergentes en el foro de Flash y Actionscript en Foros del Web. Hola! ¿cómo estan? Quiero hacer una función genérica que "abra" ventanas emergentes. Uso comillas porque en realidad lo que hace es aumentar el alpha a ...
  #1 (permalink)  
Antiguo 20/11/2007, 13:53
 
Fecha de Ingreso: octubre-2007
Mensajes: 9
Antigüedad: 16 años, 5 meses
Puntos: 0
Función para "abrir" ventanas emergentes

Hola! ¿cómo estan?

Quiero hacer una función genérica que "abra" ventanas emergentes. Uso comillas porque en realidad lo que hace es aumentar el alpha a 100 o disminuirlo a 0, sin abrirlas realmente.

La función que intento hacer es:

Código:
abreVentana = function (movie, ventana, alfaUP, alfaDOWN) {
	tagVentana = "pop"+ventana;
	pop = eval(tagVentana);
	movie.onRelease = function() {
		pop.onEnterFrame = function() {
			this._alpha += alfaUP;
			if (this._alpha>=100) {
				delete pop.onEnterFrame;
			}
		};
		pop.onPress = function() {
			this.onEnterFrame = function() {
				this._alpha -= alfaDOWN;
				if (this._alpha<=0) {
					delete pop.onPress;
					delete this.onEnterFrame;
				}
			};
		};
	};
};
Las variables son:

movie = boton (mc) que abre la ventana
ventana = numero de la ventana a abrir (en el escenario pop1, pop2)
alfaUP = velocidad de apertura (100 abre directamente, a medida que achicamos el numero aparece con un fade in).

Si lo uso para un solo boton y una sola ventana funciona perfecto, ahora, si repito la función para dos o tres botones ya no funciona.

Para corroborar errores agregué un trace(tagVentanas) y yo esperaba que si presiono el boton1 aparezca "pop1", el 2 "pop2" y asi.. pero resulta que siempre da "pop3" ya que apliqué la función a tres botones:

abreVentana(bt1, 1, 100, 100)
abreVentana(bt2, 2, 100, 100)
abreVentana(bt3, 3, 100, 100) <--------- el trace muestra siempre pop3

Espero no haberlos mareado... muchas gracias por su atención, desde ya.
Cordero


Antes de publicar el mensaje me di cuenta del error, por cierto bastante tonto.
Pero lo publico igual por si alguien quiere usar la funcion ;)

Código:
abreVentana = function (movie, ventana, alfaUP, alfaDOWN) {
	movie.onRelease = function() {
		tagVentana = "pop"+ventana;
		pop = eval(tagVentana);
		pop.onEnterFrame = function() {
			this._alpha += alfaUP;
			if (this._alpha>=100) {
				delete pop.onEnterFrame;
			}
		};
		pop.onPress = function() {
			this.onEnterFrame = function() {
				this._alpha -= alfaDOWN;
				if (this._alpha<=0) {
					delete pop.onPress;
					delete this.onEnterFrame;
				}
			};
		};
	};
};
El error estaba en definir tagVentana y pop antes de apretar el boton :p
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:40.