Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/04/2013, 13:45
Avatar de berkeleyPunk
berkeleyPunk
 
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 9 meses
Puntos: 22
Sonrisa ¿Cómo no repetir funciones a lo baboso?

Buen día.
Tengo el siguiente HTML:
Código HTML:
Ver original
  1. <div id="links">
  2.     <div>
  3.       <a href="#" id="a"></a>
  4.     </div>
  5.     <div>
  6.       <a href="#" id="b" onclick="abrirVideoA()"></a>
  7.     </div>
  8.     <div>
  9.       <a href="#" id="c"></a>
  10.     </div>
  11.   </div>
  12. ...

Lo que quiero hacer es que al dar clic a cada link se abra una nueva ventana con un video distinto. Puedo hacer una función que abra una ventana que contenga un video específico:
Código Javascript:
Ver original
  1. function abrirVideoA()
  2.     {
  3.         var ventana = window.open("", "Nueva ventana", "width=660, height=380, scrollbars=no");
  4.         ventana.document.write("<head><title>Video</title></head><body>");
  5.         ventana.document.write("<video src="videoA.ogv" controls></video>");
  6.         ventana.document.write("</body>");
  7.     }

Puedo repetir esta misma función (sólo cambiando el nombre de la función y del video) tantas veces como videos haya que mostrar en mi galería, y llamar cada una de estas funciones desde el link con el evento onclick(). Pero si meto 15 videos, esto acarrearía mucho código. ¿Cómo hacer para no repetir funciones a lo baboso? Algo como lo siguiente:
Código Javascript:
Ver original
  1. function abrirVideo(video)
  2.     {
  3.         var ventana = window.open("", "Nueva ventana", "width=660, height=380, scrollbars=no");
  4.         ventana.document.write("<head><title>Video</title></head><body>");
  5.         ventana.document.write(video);
  6.         ventana.document.write("</body>");
  7.     }
En donde video sería una variable que contuviera cada vez el el HTML para mostrar un video específico. Es decir, que al dar clic al link A, la variable video contuviera:
Código HTML:
Ver original
  1. <video src="videoA.ogv" controls></video>
y que al dar clic al link B, contuviera:
Código HTML:
Ver original
  1. <video src="videoB.ogv" controls></video>
etc.
Se me ocurre que el ID de cada link tuviera este HTML, pero no sé muy bien cómo la función javascript lo recogería dentro de una variable.
Gracias.

Última edición por berkeleyPunk; 14/04/2013 a las 13:51