2011-01-22 16 views
6

Cuando intento para conseguir la contentwindow de un iframe, utilizandoIframe ContentWindow

var contentWindow = document.getElementbyId('iframe').contentWindow 

a veces se vuelve "Ventana indefinido" porque el contentWindow no existe. Me parece que no puede ejecutar una comprobación de que el uso de

if (contentWindow === unidentified) or if (contentWindow === null) 

ya que sólo los errores hacia fuera del código si trato de agarrar los valores fuera de él. ¿Alguien más se ha encontrado con este problema y ha encontrado una solución?

+3

'no identificado' me hizo sonreír :) Todos fuimos principiantes una vez. –

Respuesta

6

¿Lo está escribiendo correctamente? getElementByID no getElementbyId. ¿Confirmó usted que eso devuelve un elemento antes de consultar contentWindow? ¿Lo estás consultando después de que se carga?

¿Está haciendo gEBI después de DOM listo o carga de la página? ¿Lanzaste alertas sobre el elemento? ¿El dominio en el iframe es el mismo que el dominio de origen? ¿Qué navegador estás usando?

if (contentWindow === unidentified) or if (contentWindow === null) 

No hay tal cosa como unidentified es undefined. Disminuya la velocidad y sea preciso.

+1

+1 para tus ojos agudos ... – Wazzzy

2

Trate este

var iframeElem = parent.document.getElementById("iframe"); 
var win = iframeElem.contentWindow; 
-2

intente especificar los datos que desea desde el objeto se llama aquí

var contentWindow = document.getElementById('iframe') 

al hacer esto

var contentWindow = document.getElementById('iframe').contentWindow 

Esto funcionó para mí