2011-10-04 9 views

risposta

52

Facilmente chiamando parent.your_var_name nello script del tuo iframe.

Una condizione: entrambe le pagine (principale e iframe) devono trovarsi nello stesso dominio.

pagina principale:

<script> 
var my_var = 'hello world!'; 
</script> 

iframe

<script> 
    function some_fn(){ 
    alert(parent.my_var); //helo world! 
    } 
</script> 
+6

Grazie, mi sono appena reso conto di quanto male sono con javascript: p – Ankit

33

non è possibile se l'iframe e il documento principale non sono nello stesso dominio (a causa della politica di sicurezza croce di dominio).

Per ignorare questa limitazione è possibile utilizzare la messaggistica interdominio.

Possibile se iframe un documento principale si trova nello stesso dominio, è possibile accedere alle loro variabili globali. Ci sono oggetti che appartengono all'oggetto window dell'iframe o della pagina principale.

Ecco il codice per accedere alla variabile iframe myvar dal documento principale (o un iframe) in uno stesso dominio:

document.getElementById('iframeid').contentWindow['myvar']; 
+2

Grazie per il tuo tempo! Dal modo in cui volevo accedere alla variabile della pagina su iframe, mi hai detto il contrario. – Ankit

+5

Ancora abbastanza utile per vedere anche il retro. – johnbakers

+0

Potresti chiarire "cross domain messaging" in questo contesto? –

Problemi correlati