2009-04-09 8 views

risposta

15

jQuery non necessario.

parent.document.body.clientHeight

che funziona per me con IE7 e FF3.

+5

non credo che questo dovrebbe funzionare con un iframe da un altro sito - è vero? Non sono sicuro se la domanda interessa comunque. –

+0

grazie anche a chrome e ff – Chetan

+6

Adam è corretto. Questo codice funziona solo se [il dominio è lo stesso] (http://stackoverflow.com/questions/13798540/how-to-get-window-size-from-cross-domain-iframe-in-ie). Se non lo è, usa postMessage per inviare l'altezza dal genitore all'iframe. –

3

Ho provato l'approccio clientHeight su un sito Web in cui entrambi gli iframe erano sullo stesso dominio e non funzionava. (ritorno 0).

Dopo un sacco di testare il modo migliore che ho trovato (e sarò felice di apprendere un modo migliore) è quello di creare una funzione sul genitore che restituisce l'altezza del documento, qualcosa di simile:

Parent:

function getDocumentHeight(){ 
    return $(document).height(); 
} 

Iframe:

var parentDocHeight = parent.getDocumentHeight(); 
2

Un altro po ssibility è:

$(window.parent.document).height() 
1

In jQuery si può fare

$(parent.window).width(); 
Problemi correlati