1 .
Cómo hacerlos sonar
2 .
Cómo usar el código
Aquí tienes lo necesario para hacer sonar archivos desde Javascript
(al cargar la página, al pasar el usuario el ratón por una
imagen, etc..).
Cómo hacerlos sonar
Muchas cosas son imposibles de lograr con los métodos habituales
de JavaScript. Y allí donde llega el HTML pero el Javascript no
tendremos que usar el viejo (y algo cutre) método de escribir HTML
con Javascript para obtener lo que queremos.
Con esta idea, y sabiendo cual es el código HTML que debemos
escribir en un documento para que haga sonar un archivo de sonido, lo
único que debemos hacer es preparar un frame escondido donde
escribirlo:
<FRAMESET COLS="1,*" FRAMEBORDER=0 FRAMESPACING=0
BORDER=0>
<FRAME SRC="blanco.htm" NAME="sonido" NORESIZE
MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING="NO"
FRAMEBORDER=0>
<FRAME SRC="principal.htm" NAME="principal" FRAMEBORDER=0>
</FRAMESET>
Añadiendo a principal.htm el
siguiente código en Javascript:
function play(fichero) {
sonido = parent.sonido.document;
sonido.open();
sonido.write('<HTML><HEAD>');
sonido.write('</HEAD><BODY BGCOLOR="#ffffff">');
sonido.write('<EMBED SRC="' +fichero+'" HIDDEN=TRUE'+
+ 'AUTOSTART=TRUE HEIGHT=0 LOOP=FALSE>');
sonido.write('</BODY></HTML>');
sonido.close();
}
function stop() {
sonido = parent.sonido.document;
sonido.open();
sonido.write('<HTML><HEAD>');
sonido.write('</HEAD><BODY BGCOLOR="#ffffff">');
sonido.write('</BODY></HTML>');
sonido.close();
}
Como podéis ver, el código no hace nada más que
escribir en el frame escondido el código necesario para hacer sonar
un fichero (necesitarás para que funcione un navegador
de versión 3 o superior con las capacidades necesarias para hacer
sonar ficheros WAV o MID).
Cómo usar el código
Ahora tan sólo necesitamos llamar a nuestras recén creadas
funciones play y stop
desde el controlador del evento que mejor nos caiga. En el siguiente ejemplo, cuando paséis el ratón por encima
del altavoz que aparecerá sonará una melodía, y dejará de hacerlo cuando alejeis el mismo.
Ya sé que la música es mala, pero... ¿qué
esperabais? Es mía. Bueno, a lo que ibamos; el código que hace
esto es el siguiente:
<A HREF="loquesea"
onMouseOver="play('cpet.mid')" onMouseOut="stop()">
<IMG SRC="altavoz.gif" BORDER=0>
</A>
Simplemente con llamarlo desde el evento adecuado,
podréis hacer tocar lo que queráis. No conviene abusar, no obstante,
ya que los sonidos no se precargan y puede resultar algo lento para el usuario.
Últimos comentarios
Últimos 5 comentarios
sonido en un template (12/11/2008)
Por
necesito ponerle sonido a una web hecha con un template sin que se cargue nuevamente en cada seccion. COMO HAGO ????
Lo mismo en asp.net (13/11/2007)
Por
Quiero ejecutar un sonido en una pagina .aspx ¿como lo hago?
Duda (24/09/2006)
Por
As explicado como añadir un sonido y hacerlo funcionar al pasar el raton.
Si quisiera que cuando salga un color determinado en la web, sonara ¿como deveria hacerlo?
pufff (01/11/2005)
Por
alguien sabe como puedo hacer para cayar a la bola de pendejos de arriba :S
pufff (01/11/2005)
Por
alguien sabe como puedo hacer para cayar a la bola de pendejos de arriba :S