Foros del Web » Programando para Internet » Javascript »

Evento en iframe especial

Estas en el tema de Evento en iframe especial en el foro de Javascript en Foros del Web. Hola a todos, Tengo un iframe, puro y duro. El caso es que necesito detectar cuando se pide ejecutar una url en él. Actualmente con ...
  #1 (permalink)  
Antiguo 13/01/2013, 14:53
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 12 años, 4 meses
Puntos: 19
Evento en iframe especial

Hola a todos,

Tengo un iframe, puro y duro. El caso es que necesito detectar cuando se pide ejecutar una url en él. Actualmente con el evento "onload" detecto cuando se termina de cargar algo en el. Pero no me vale, ya que lo que necesito es detectar cuando el src del iframe cambia, no saber cuando termina de cargar su contenido, si no justo el momento en que el src del iframe es modificado.

¿Sabeis como puedo hacerlo?, he buscado bastante y no creo que exista un evento para ello.

¿Que pensais?.

Osea, quiero clicar en un link dentro del iframe, he inmediatamente que me salte un alert(); . Antes de cargar la url especifica. :P
  #2 (permalink)  
Antiguo 13/01/2013, 18:06
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 12 años, 1 mes
Puntos: 1567
Respuesta: Evento en iframe especial

Si lo he entendido, algo así te va a servir
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7. <style type="text/css">
  8. /*<![CDATA[*/
  9.  
  10. span{
  11. cursor: pointer;
  12. }
  13. span:hover{
  14. color: green;
  15. }
  16.  
  17. /*]]>*/
  18.  
  19. <script type="text/javascript">
  20. //<![CDATA[
  21. /* script */
  22. var actual = "about:blank";
  23. function cambiar(laUrl){
  24. var el_Iframe = document.getElementById('destino');
  25. if(laUrl != actual){
  26. alert('se modifica la url del iframe');
  27. el_Iframe.src = laUrl;
  28. actual = laUrl;
  29. }
  30.  
  31. }
  32. //]]>
  33. </head>
  34. <div>
  35. <span onclick="cambiar('a.html')">Página A</span><br />
  36. <span onclick="cambiar('b.html')">Página B</span>
  37. </div>
  38. <iframe src="about:blank" name="destino" id="destino" width="200" height="200"></iframe>
  39. </body>
  40. </html>

en var actual definí la url por defecto del iframe, yo usé una página en blanco


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: especial, evento, iframe
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 19:15.