Javascript 未捕获类型错误:使用onload时的类型错误

Javascript 未捕获类型错误:使用onload时的类型错误,javascript,canvas,onload,Javascript,Canvas,Onload,好吧,我卡住了。我试图在画布中插入一个图像,Chrome一直给我未捕获的TypeError:onload方法的TypeError。以下是我的javascript: letterBase = new Image(); letterBase.onload = function() { context.drawImage(letterBase, 0, 0); console.log("drawing image"); }; letterBase.src = "/assets/l

好吧,我卡住了。我试图在画布中插入一个图像,Chrome一直给我未捕获的TypeError:onload方法的TypeError。以下是我的javascript:

letterBase = new Image();
letterBase.onload = function() {
    context.drawImage(letterBase, 0, 0);
    console.log("drawing image");
  };
  letterBase.src = "/assets/letter/" + Character.letter + ".png";
  console.log(letterBase);
这很奇怪,因为我可以看到图像是从console.log(letterBase)加载到控制台的,但我真的看不出这里出了什么问题。有什么想法吗

编辑:我不认为这是问题所在,但我有如下设置上下文的代码:

$(document).ready(function() {
    // some other init functions...
    canvas = document.getElementById("characterCanvas");
    context = canvas.getContext("2d");
    // ...

我知道问题出在哪里了。设置源代码并加载图像后,我正在清除变量

letterBase.src = ""

这导致onload第二次启动,但这次没有任何来源。没有错误。

当我启动画布时,您是否将
上下文设置为2d canvas contextduplicate@mgraph是的。@ryan:这是该问题的重复吗?代码在根本上是不同的。@T.J.Crowder我也在想同样的事情。