I want to add iframe element to the page and then add <p> element inside that iframe.
I tried this:
var iframe = document.createElement('iframe');
iframe.frameBorder = 1;
iframe.width = "500px";
iframe.height = "250px";
iframe.id = "iframe";
var p = document.createElement('p');
iframe.appendChild(p);
document.getElementById("div").appendChild(iframe); //this is a div that I have in body.
The iframe is added to the page but P is not added into iframe(iframe's body)
In modern browsers, you use the contentDocument attribute. In others, you have to use contentWindow.document. You create the paragraph using the iframe's document, in the onload event. So:
var iframe = document.createElement('iframe');
iframe.frameBorder = 1;
iframe.width = "500px";
iframe.height = "250px";
iframe.id = "iframe";
iframe.onload = function()
{
var doc = iframe.contentDocument || iframe.contentWindow.document;
var p = doc.createElement('p');
p.textContent = "Paragraph in iframe";
doc.body.appendChild(p);
};
document.getElementById("div").appendChild(iframe); //this is a div that I have in body.
I made a jsfiddle demo.
Also, I recommend you don't use ids that are the same as the tag name. It could become confusing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With