页。例如: http://google.com/recaptcha/api2/demo如何获取框架内的元素? (绘制画布)
如果我打开图像“身份识别码”的框架将是 - 例如:帧2
现在我想做的事,是绘制的“画布myid'在'frame2'内。
这里是我的代码:(通过元素的id画)
var canvas = window.document.createElementNS('http://www.w3.org/1999/xhtml', 'html:canvas');
var selection_element = window.document.getElementById("myid");
var selection;
var de = window.document.documentElement;
var box = selection_element.getBoundingClientRect();
var new_top = box.top + window.pageYOffset - de.clientTop;
var new_left = box.left + window.pageXOffset - de.clientLeft;
var new_height = selection_element.offsetHeight;
var new_width = selection_element.offsetWidth;
selection={
top:new_top,
left:new_left,
width:new_width,
height:new_height,
};
canvas.height = selection.height;
canvas.width = selection.width;
var context = canvas.getContext('2d');
context.drawWindow(
window,
selection.left,
selection.top,
selection.width,
selection.height,
'rgba(255, 255, 255, 0)'
);
var canvasdata = canvas.toDataURL('','').split(',')[1];
我不知道你在说什么,但在框架访问的元素:'VAR帧= window.frames [ 'YOUR-FRAME-ID']; (frame).contents()。find('YOUR-CANVAS-ID'') –
@Farzin Kanzii我可以使用类似这样的东西?var canvas = window。 frames.createElementNS('http://www.w3.org/1999/xhtml','html:canvas'); var selection_element = window.frames.getElementById(“myid”); var selection; var de = window.frames.documentElement; –
我不知道'createElementNS'任何东西是否在其他地方工作 –