Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/04/2007, 07:36
Avatar de Saruman
Saruman
 
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años, 6 meses
Puntos: 5
Re: Sonido para oir por el Firefox

que tal, mira, adjunto está el .fla para que puedas ver a que me refiero, y aquí esta el codigo del js. Espero que te funcione:

Código PHP:
var __MySound null;
    
function 
PlaySound(name) {
    try {
        if (!
namename "alert";
        
        if (!
__MySound) {
            
__MySound document.createElement('div');
            
__MySound.id "__GlobalSound__";
            
__MySound.name "__GlobalSound__";
            
__MySound.style.left '0px';
            
__MySound.style.top '0px';
            
__MySound.style.width '1px';
            
__MySound.style.height '1px';
            
__MySound.style.zIndex 0;
            
__MySound.style.position "absolute";
            
__MySound.style.visibility 'hidden';
            
document.body.appendChild(__MySound);
        }
        
        if (
__MySound) {
            var 
sound = new SWFObject("sounds.swf""_GloalSound_"117);
            
sound.addVariable("s"name);
            
sound.write("__GlobalSound__");
        }
    } catch(
err) {
       
alert(err);
    }

debes tener incluida la libreria gratuita para trabajar el flash en js, se llama swfobject. http://blog.deconcept.com/swfobject/#download

el flash (swf) contiene unos cuantos sonidos dentro y solamente los llamo cuando ejecuto la función PlaySound.

no te puedo dar una clase de actionscript porque este foro no es para eso, pero viendo el action que tiene el fla que te estoy adjuntando creo que podrás entenderlo con la ayuda de alguien.

en el .fla tenemos el codigo:

Código PHP:
var s;
var 
my_sound:Sound = new Sound();
my_sound.attachSound(s);
my_sound.start(); 
donde "s" es la variable que yo parseo en la función PlaySound como la vez mas arriba, exactamente donde está "sound.addVariable("s", name);"

todos los sonidos en el fla están linkiados (investiga sobre esto en la libreria de archivos del flash) y contienen un nombre, el cual es el que parseo con la ayuda de la variable "s".

ejemplo:

hago el llamado de la función:

Código PHP:
 PlaySound('alert'); 
en el .fla hay otros sonidos, los cuales se llaman: error, recycle, restore. si quieres agregar más sonidos es cuestión tuya.

la función crea dinámicamente un objeto DIV para poder trabajar con el swfobject. si no está creado, lo crea y si ya lo está, entonces solo reutiliza el objeto. por eso es que hay una variable fuera de nuestra función, porque la misma es global.

el div se crea oculto y además el ancho y el alto es solamente de 1x1 px.

espero que te funcione.

pd. para bajar el .fla, presiona aqui: descargar fla

Saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.

Última edición por Saruman; 03/04/2007 a las 07:45