2009-08-17 14 views
7

C'è un modo per rilevare se il contenuto del mio iframe è cambiato?Come si rileva il ridimensionamento di iframe?

La mia soluzione è che ho un ciclo che controlla costantemente l'altezza del contenuto è efficace ma non efficiente c'è un altro modo per farlo?

+1

come si fa a dire il contenuto cambiato? Un aggiornamento a un altro URL? Un elemento del modulo aggiornato? Non sono sicuro che l'altezza ti aiuterà se due pagine hanno uguale altezza. Inoltre, se caricano una pagina da un altro dominio, non sarai in grado di accedere all'altezza del corpo del documento? Bisogno di ulteriori informazioni – redsquare

risposta

5

Poiché il contenuto dell'iframe ha un elemento separato window, è possibile farlo in uno script all'interno dell'iframe.

$(window).resize(function(){ 
    var object = $(this) 
    // Use `object.height()` and `object.width()`. 
}); 

Si potrebbe anche usare $("#the_iframe")[0].contentWindow.window (o qualcosa di simile), invece di window per accedere all'oggetto del iframe window dal campo di applicazione che contiene l'iframe.

+0

Grazie .. proverò questo .. – yoshi

+1

-1 - Purtroppo questo non è corretto. Questo si attiva solo quando la larghezza '