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

Menu Dinámico

Estas en el tema de Menu Dinámico en el foro de Flash y Actionscript en Foros del Web. He conseguido Recientemente el código fuente de un menú muy dinámico, pero he quedado un poco bloqueado, porque no he logrado poner hipervinculos a los ...
  #1 (permalink)  
Antiguo 14/06/2003, 03:10
 
Fecha de Ingreso: junio-2003
Ubicación: Bogotá
Mensajes: 28
Antigüedad: 14 años, 5 meses
Puntos: 0
Menu Dinámico

He conseguido Recientemente el código fuente de un menú muy dinámico, pero he quedado un poco bloqueado, porque no he logrado poner hipervinculos a los submenus.

He Aquí el código fuente:

Código:
Movieclip.prototype.mov = mov;
function mov () {
	this.pos = _y
	//::::::::::::::::::::::::::::::::::
	if(this._y == this.yinit){
	this.posicion = true
	} else {
	this.posicion = false
	}
	//::::::::::::::::::::::::::::::::::
	this._y += Math.round ((this.ypos-this._y)/3);
}


Movieclip.prototype.movX = movX;
function movX () {
	if (this.activar) {
		this._x += (this.xpos-this._x)/6;
	} else {
		this._x += (this.xinit-this._x)/4;
	}
	
}
nivelUno = [boton0, boton1, boton2, boton3, boton4];
subMenus = [sub0, sub1, sub2, sub3, sub4];
sub0 = ['Inicio', 'Noticías', 'Enlaces', 'Downloads', 'Artículos', 'Reviews'];
sub1 = ['uno 0', 'uno 1', 'uno 2', 'uno 3'];
sub2 = ['dos 0', 'dos 1', 'dos 2'];
sub3 = ['tres 0', "tres 1", "tres 2"];
sub4 = ['cuatro 0', 'cuatro 1', 'cuatro 2'];
pos = []
operador = []
// ----------------------------------------------------------------------------------------------------------
initXpos = 60;
//
for (i=0; i<5; i++) {
operador[i] = eval("sub" add i).length
}
//
for (i=0; i<5; i++) {
pos[i] = _root.nivelUno[i]._y
}
// ----------------------------------------------------------------------------------------------------------
function ordenar (nombre, desplazamiento, nivel) {
	// ::::::::::::::::::::
	for (i=0; i<7; i++) {
		if (eval(nombre) == nivelUno[i]) {
			_root.nivelUno[i].click = true();
		} else {
			_root.nivelUno[i].click = true;
		}
	}
	// ::::::::::::::::::::
	for (i=0; i<7; i++) {
		if (i<6) {
			_root.nivelUno[i].ypos = _root.nivelUno[i].yinit;
		}
	}
	// ::::::::::::::::::::
	_root.ordenados = false;
	for (i=0; i<6; i++) {
		if (_root.nivelUno[i]._x != _root.nivelUno[i].yinit) {
			_root.ordenados = true;
		}
	}
	// ::::::::::::::::::::
	if (_root.ordenados) {
		for (i=nivel; i<7; i++) {
			if (eval(nombre) == nivelUno[i]) {
			} else {
				_root.nivelUno[i].ypos = _root.nivelUno[i].yinit+_root.nivelUno[i]._height+25*desplazamiento;
			}
		}
	}
	// colocamos y visualizamos el menu correspondiente
	_root.subMenus[nivel]._y = Math.round(_root.pos[nivel]+_root.SubMenus[nivel]._height/_root.operador[nivel]);
	if (_root.ordenados) {
		for (i=0; i<5; i++) {
			if (_root.subMenus[i] == _root.subMenus[nivel]) {
				_root.subMenus[i].activar = true;
			} else {
				_root.subMenus[i].activar = false;
			}
		}
	}
}
// ----------------------------------------------------------------------------------------------------------
En Líneas como esta:
Código:
sub0 = ['Inicio', 'Noticías', 'Enlaces', 'Downloads', 'Artículos', 'Reviews'];
... es donde se puede cambiar el texto de cada submenú, pero como agregar un enlace a cada uno de estos strings?
  #2 (permalink)  
Antiguo 14/06/2003, 14:11
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Por lo que puedo entender del codigo.....

nivelUno = [boton0, boton1, boton2, boton3, boton4];
es un array de botones, y para acceder a los elementos de este array "en teoria" seria
-> niveluno[i].onRelese.getURL("link1.html"_blank);

Esto como dije "en teoria" ya que algo asi todavia no he probado. Pero suena interesante...si quieres mandame los .fla y le hechamos un ojaso


Saludos
__________________
http://www.flotdesign.dk/
  #3 (permalink)  
Antiguo 14/06/2003, 14:21
 
Fecha de Ingreso: junio-2003
Ubicación: Bogotá
Mensajes: 28
Antigüedad: 14 años, 5 meses
Puntos: 0
Ya lo probe pero obtengo este error::

Código:
Scene=Escena 1, Layer=funciones, Frame=1: Line 8: ')' or ',' expected
     sub0[0].onRelese.getURL('link1.html'_blank);
  #4 (permalink)  
Antiguo 14/06/2003, 19:28
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Sorry....

la sintaxis esta totalmente erronea......
metelo mejor en una function.->



sub0[0].onRelease = function (){
getURL("link1.html", _blank);
}


en link1.html se entiende que debes poner el link al que quieres acceder....

Pero insisto tendria que ver todo el codigo......porque los botones o son mc's creados dinamicamente y metidos en el array o son attachados desde la libreria y metidos en un array .......



Saludos
__________________
http://www.flotdesign.dk/

Última edición por pulento; 14/06/2003 a las 19:32
  #5 (permalink)  
Antiguo 15/06/2003, 16:42
 
Fecha de Ingreso: junio-2003
Ubicación: Bogotá
Mensajes: 28
Antigüedad: 14 años, 5 meses
Puntos: 0
Ahora ya he podido la URL de otra forma, pero tengo una dudilla, que es level cuando se ejecuta el loadmovie?

Código:
on (press) {
	if (go) {
		getURL (gotoURL);
	} else {
		// actions
		loadMovie (gotoURL, level);
	}
Que habría que poner en level?
  #6 (permalink)  
Antiguo 16/06/2003, 02:42
 
Fecha de Ingreso: abril-2003
Ubicación: México
Mensajes: 116
Antigüedad: 14 años, 7 meses
Puntos: 0
Jaja una pregunta a lo mejor es muy boba pro no he podido , el codigo que pusiste lo peque pero no me aparecio nada, que necesito tener para que me aparesca el menu? alguien me podria decir?
  #7 (permalink)  
Antiguo 17/06/2003, 02:35
 
Fecha de Ingreso: junio-2003
Ubicación: Bogotá
Mensajes: 28
Antigüedad: 14 años, 5 meses
Puntos: 0
Como hago para enviarte el fla?
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:57.