Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/12/2009, 13:09
tementa
 
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
Parar la reproducción de un player al cambiar de sección

Tengo un site el cual tiene un menú que carga distintos swf's.
Uno de los swf's es un player de audio, cuando reproduzco una canción y pulso en el menú para ir a otra sección del sitio, se carga el swf correspondiente pero sigue sonando la canción del player.
Necesitaría saber cómo parar la reproducción de una pista de audio cuando pulso en el enlace a otra sección de un sitio.

Tengo una clase Boton.as que genera los botones del menú.

El código del mc menu es:
Código:
/* Importamos la clase de boton */
import Boton

/* Declaramos y creamos el array que contiene el nombre de las opciones de cada botón*/
var opcionesMenu:Array = new Array();
opcionesMenu=["BIO","GALERÍA", "MÚSICA", "VÍDEOS", "CUENTOS", "SERVICIOS","TIENDA","CONTACTO"];

/* Declaramos y creamos el array que contiene el nombre de los mc que cargará cada botón */
var enlacesMenu:Array = new Array();
enlacesMenu=["bio","galeria", "audio_player", "video_player", "cuentos","servicios","tienda", "contacto"];


/* Declaramos y creamos el sprite que contendrá a los botones. Definimos su posición y lo añadimos a escena */
var menu:Sprite = new Sprite();
menu.x=48;
menu.y=173;
addChild(menu);

// Declaramos el cargador y el URLRequest para los swf externos
var cargador:Loader = new Loader();
var url:URLRequest;
addChild(cargador);

/* Declaramos la instancia clip de la clase Boton. Definimos un bucle creará un botón con las distintas opciones de array opcionesMenu. 
Definimos el color que mostrará al situar el ratón encima, definimos su posición y lo añadimos a escena */
var clip:Boton;
for (var i:uint = 0; i<opcionesMenu.length; i++) {
	clip= new Boton(121,41,0x000,0xFFFFFF,opcionesMenu[i]);
   	clip.addEventListener(MouseEvent.CLICK, cargarSeccion);
	clip.x=151*i;
	clip.name = enlacesMenu[i];	
	menu.addChild(clip);
}

function cargarSeccion(e:MouseEvent){	
	cargador.load(new URLRequest("swf/"+e.currentTarget.name+".swf"));
	var nombre:String = e.currentTarget.name;
	cargador.audio_player.parar()
	trace(nombre);
	cargador.x=258;
	cargador.y=260;
}
Al pulsar sobre el botón Música, se me carga el swf del audio_player en el cargador, y el trace me devuelve audio_player, que debe ser el nombre del swf importado.
Sin embargo no puedo invocar la función parar() del audio_player. ¿Mi planteamiento es erróneo?, debería invocar los swf de otra manera.

Cualquier ayuda es bienvenida
Gracias