2011-10-18 15 views
9

Dubito che ciò sia effettivamente possibile ma che sono pronto per essere corretto.Rileva <iframe> altezza e larghezza dall'interno del iframe

Quello che mi serve è essere in grado di rilevare la larghezza e l'altezza di un iframe dall'iframe, quindi se l'iframe src è iframeContent.html ho bisogno di poter levigare i valori su questa pagina.

Non ho il controllo sulla pagina che ospita l'iframe solo il contenuto dell'iframe.

È possibile?

risposta

10

È sempre possibile ottenere le dimensioni della pagina Web, non importa se la pagina viene caricata all'interno di una iframe o una nuova finestra funziona sempre allo stesso modo. Questa è una funzione che ho trovato utilizzata per ottenere le dimensioni di window, puoi anche utilizzarla per ottenere le dimensioni di .

function alertSize() { 
    var myWidth = 0, myHeight = 0; 
    if(typeof(window.innerWidth) == 'number') { 
    //Non-IE 
    myWidth = window.innerWidth; 
    myHeight = window.innerHeight; 
    } else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { 
    //IE 6+ in 'standards compliant mode' 
    myWidth = document.documentElement.clientWidth; 
    myHeight = document.documentElement.clientHeight; 
    } else if(document.body && (document.body.clientWidth || document.body.clientHeight)) { 
    //IE 4 compatible 
    myWidth = document.body.clientWidth; 
    myHeight = document.body.clientHeight; 
    } 
    window.alert('Width = ' + myWidth); 
    window.alert('Height = ' + myHeight); 
} 
+4

Si dovrebbe fornire un collegamento a cui è stato copiato e incollato la risposta da. In questo modo viene dato il credito dove dovuto. Inoltre, penso che possiamo tranquillamente dimenticare IE 4 quando scriviamo codice in questo giorno ed età. –

+0

window.innerWidth/Height riporterà la dimensione dell'IFRAME, non del browser (ad esempio se la finestra del browser viene ridimensionata più PICCENTE rispetto all'IFRAME contenente, il browser riporta sempre la dimensione dell'IFRAME) – GlennG

+0

non funziona in IE9 per io - restituisce 0 – ILya

Problemi correlati