2011-01-19 10 views
5

Sto provando a scrivere un'applicazione JavaScript che caricherà un pulsante in un iFrame su una pagina. Questa applicazione leggerà il documento genitore e rimuoverà tutte le immagini, applicherà uno stile minimo e ricaricherà il genitore con questa nuova pagina.Lettura del documento principale da iFrame e modifica del genitore

Il problema che sto riscontrando è la lettura e la scrittura del documento principale dall'iFrame. Qualcuno sa di un modo per raggiungere questo obiettivo? Ho letto un po 'di messaggistica interdominio ma non sono sicuro delle alternative e quale sarebbe il migliore.

Grazie in anticipo.

+1

Se la pagina si trova su un dominio e l'iframe punta a un altro dominio, non è possibile farlo tramite iframe. – mhitza

risposta

13

È possibile fare riferimento al genitore utilizzando il genitore o utilizzando la variabile superiore che punta sempre al documento più esterno.

  • genitore == finestra padre
  • top == fuori la maggior parte della finestra

Così, per la prima accesing div nel genitore

var d = parent.document.getElementByTagName("div")[0]; 

Tuttavia, come indicato già nel commento, sia il documento esterno che il documento nell'iframe devono provenire dallo stesso dominio o sarete bloccati per motivi di sicurezza.

+0

Grazie per la risposta. Sono andato con la funzione di messaggistica cross-domain HTML5, delineata qui: http://dev.w3.org/html5/postmsg/#introduction – MeanwhileInHell

+0

Questo non sembra giusto, genitore e il punto in cima alla finestra, non il documento . – Christophe

+0

Come nota, è 'document.getElementsByTagName'. Funziona! –

Problemi correlati