context.drawImage(bufferContext,0,0)返回Type错误

context.drawImage(bufferContext,0,0) returning Type error?

本文关键字:返回 Type 错误 drawImage bufferContext context      更新时间:2023-09-26

我一直在玩画布,但偶然发现了一个问题。在画布上阅读时,我发现了几种不同的方法来声明画布及其上下文,在我尝试实现一个简单的帧缓冲区之前,这两种方法似乎都有效。

function drawToCanvas(){
    var buffer = $("#myBuffer");    
    var canvas = $("#myCanvas");
    var bufferContext = buffer.get(0).getContext("2d");
    var context = canvas.get(0).getContext("2d");
    //var buffer = document.getElementById("myBuffer"); 
    //var canvas = document.getElementById("myCanvas");
    //var bufferContext = buffer.getContext("2d");
    //var context = canvas.getContext("2d");
    bufferContext.fillRect(100,100,100,100);
    context.drawImage(buffer, 0, 0);
}

如果我使用注释掉的行来绘制上下文中的缓冲区图像,它可以完美地工作。但是,如果我使用上面的行,drawImage()函数会给出一个typeError。考虑到我可以很好地使用JQuery选择器方法,这让我很困惑,只是drawImage()函数让我失败了

任何建议都将不胜感激。

使用jquery选择器时,drawImage中使用的buffer参数可能是jquery对象。您可能应该将其更改为缓冲区。get(0)?我自己从未使用过jquery,但这是我从您的其余代码中推断出来的。