Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 帆布';drawImage';返回';未找到与提供的签名匹配的函数;_Javascript_Jquery_Html_Canvas_Html5 Canvas - Fatal编程技术网

Javascript 帆布';drawImage';返回';未找到与提供的签名匹配的函数;

Javascript 帆布';drawImage';返回';未找到与提供的签名匹配的函数;,javascript,jquery,html,canvas,html5-canvas,Javascript,Jquery,Html,Canvas,Html5 Canvas,我有两张HTML5画布。我先画一个临时的,然后我想复制到最后一个临时的。 除了drawImage函数外,其他一切似乎都正常工作。drawImage函数很奇怪,因为它同时接受图像和画布。我已经尝试了convert to DatatoUrl()方法,但没有成功 这些是我正在使用的对象。尺寸等都是以后设定的 var paint = $('<canvas/>'); var temp_paint = $('<canvas/>'); temp_ctx = temp_paint[0].

我有两张HTML5画布。我先画一个临时的,然后我想复制到最后一个临时的。 除了drawImage函数外,其他一切似乎都正常工作。drawImage函数很奇怪,因为它同时接受图像和画布。我已经尝试了convert to DatatoUrl()方法,但没有成功

这些是我正在使用的对象。尺寸等都是以后设定的

var paint = $('<canvas/>');
var temp_paint = $('<canvas/>');
temp_ctx = temp_paint[0].getContext('2d');
ctx = paint[0].getContext('2d');
这就是我得到的错误:


未能对“CanvasRenderingContext2D”执行“drawImage”:未找到与提供的签名匹配的函数

temp\u paint
是jQuery的对象,因此它不能是
.drawImage()
第一个参数。您可以改为使用此代码:

ctx.drawImage(temp_ctx.canvas, 0, 0);

已经在谷歌上搜索了多次,但没有找到解决方案。还说,我已经做了该链接中介绍的图像方法。我怀疑这与jQuery和DOM有关。是的,我终于看到您将jQuery的对象作为
.drawImage()
第一个参数传递。请尝试使用
temp\u paint[0]
temp\u ctx.canvas
。非常感谢。temp_ctx.canvas成功了。:)不客气。既然这是正确的答案,要么我把它作为正常答案发布,要么你们可以删除这个问题。你更喜欢哪种方式?正常答案更好:)
ctx.drawImage(temp_ctx.canvas, 0, 0);