Digamos que tengo acceso a un index.html y dentro de esta página, estoy cargando un contact.html como iframe .
Puedo manipular este iframe y aquí está mi código:
const myIframe = document.getElementById("myIframe"); const iframeDocument = myIframe.contentDocument; iframeDocument.body.style.backgroundColor = "#ff0000"; Puedo cambiar el color de fondo dentro de este iframe , pero lo que debo hacer es agregar código JavaScript al <body> de este documento iframe . Probé con innerHTML pero no funciona.
El código que necesito agregar se ve así:
<script> iframe(function (event) { const frameTest = true; if (!iframe) { test(event); } else { testo(event); } </script>Es importante agregar este código con etiquetas y ejecutarlo más adelante.
¿Tienes alguna idea de cómo hacerlo?
Primero, creé una página vacía llamada bar.html
<html> <head> </head> <body> </body> </html>luego creó una página foo.html también:
<html> <head> <script> function load() { const myIframe = document.getElementById("myIframe"); const iframeDocument = myIframe.contentWindow; var script = document.createElement("script"); script.innerText = "alert(1)"; iframeDocument.document.body.appendChild(script); } </script> </head> <body onload="load()"> <iframe id="myIframe" src="/bar.html"> </body> </html>Por favor, pruebe esto como una prueba de concepto