I got a iframe and I want to select a canvas element in this iframe. But it doesn’t work. I’m using the following code.
This is my iframe
<body>
<div id="canvasdiv" width="300" height="300"></div>
</body>
This is my parent page
<iframe name="iframe" id="iframe" frameborder="0" width="325" height="325" src="..."></iframe>
With javascript I add a canvas with some properties. For example the id.
canvas.node.id = "canvas";
In my parent page I got the following javascript.
var iframe = document.getElementById("iframe");
alert(iframe);
var iframe_canvas = iframe.contentDocument || iframe.contentWindow.document;
alert(iframe_canvas);
var canvas = iframe_canvas.getElementById("canvas");
alert(canvas);
Result:
iframe = iframe element
iframe_canvas = html element
canvas = null
Does somebody know why I can’t access the canvas element? =(
I’m sorry, but I solved the problem. Thanks for all the replies. =)
To test the getElementById function I called it by
$(document).ready. But at this time the iframe wasn’t rendered by the browser. That’s why I could access the iframe it self but not the elements of the iframe. Now I assigned the function to a button and it works.