2012-01-04 24 views
16

Tengo una página web alojada en línea y me gustaría que fuera posible insertar un IFRAME en otra página web usando JavaScript.Creación de un IFRAME usando JavaScript

¿Cómo sería esta la mejor manera posible, que solo agregue mi URL de página web al JavaScript y que funcione en todos los navegadores?

Gracias

+0

¿Has probado algo? – JohnJohnGa

+0

¿Presumiblemente ambas páginas son suyas? ¿Desea insertar YourSiteA en un iframe dentro de YourSiteB? – beeglebug

Respuesta

36

que puede utilizar:

<script type="text/javascript"> 
    function prepareFrame() { 
     var ifrm = document.createElement("iframe"); 
     ifrm.setAttribute("src", "http://google.com/"); 
     ifrm.style.width = "640px"; 
     ifrm.style.height = "480px"; 
     document.body.appendChild(ifrm); 
    } 
</script> 

También puedes ver basics of the iFrame element

3

Es mejor para procesar HTML como una plantilla que construir nodos a través de JavaScript (HTML no es XML, después de todo.) Puede mantener limpia la sintaxis HTML de su IFRAME usando una plantilla y luego agregando los contenidos de la plantilla a otra DIV.

<div id="placeholder"></div> 

<script id="iframeTemplate" type="text/html"> 
    <iframe src="..."> 
     <!-- replace this line with alternate content --> 
    </iframe> 
</script> 

<script type="text/javascript"> 
var element, 
    html, 
    template; 

element = document.getElementById("placeholder"); 
template = document.getElementById("iframeTemplate"); 
html = template.innerHTML; 

element.innerHTML = html; 
</script> 
+0

No he visto un 'script [type = text/html]' antes; ¿Hay alguna diferencia haciendo esto en comparación con un 'div [style = display: none]'? –

+2

@David Cook la sintaxis que mencionas es para diferentes propósitos. :) –

Cuestiones relacionadas