2012-09-14 26 views
6

Estoy creando un iframe dinámicamente para submmiting una forma, después de la presentación que necesito para eliminar forman el marco flotante del page.I retira itas siguiente manera pero no se elimina,Extracción de la página iframe

function remove(){ 
var frame = document.getElementById("upload_iframe"), 
var frameDoc = frame.contentDocument || frame.contentWindow.document; 
frameDoc.removeChild(frameDoc.documentElement); 
} 

cómo quitar el ifarme forma completamente la forma.

Gracias

+1

has 'document.removeChild (marco);'? –

Respuesta

7

marco tiene 2 comportamientos: Marco como elemento de documento (como div u otro elemento DOM) y el marco como elemento de ventana (como window objeto global). Así que si desea eliminar iframe del árbol DOM que tiene que trabajar con iframe como elemento DOM con

function remove(){ 
var frame = document.getElementById("upload_iframe"); 
frame.parentNode.removeChild(frame); 
} 
+1

, pero ¿qué ocurre si tengo la función de eliminación escrita solo dentro del marco, y quiero realizar alguna operación después de quitarla? –

+0

@ArunPratapSingh puede enviar un mensaje al cuadro principal a través de postMessage y preguntar al cuadro principal para eliminar iframe – Serjio

1

Una forma en que he estado haciendo (ya que tengo una gran cantidad de marcos flotantes) está utilizando jQuery,

$('iframe').remove() 

o en el caso de un solo marco flotante se puede quitar utilizando su ID, todavía con jQuery

$('#iframeID').remove() 
Cuestiones relacionadas