我已经尝试了几种不同的方法,但我总是遇到相同的错误。我之前已经加载了一个图像到canvas,但是自从我在几天前更新了Safari之后,我收到了错误。
我会发布我目前所拥有的内容,但我已经尝试过使用jQuery、html的onLoad属性等。
var cvs, ctx, img;
function init() {
   cvs = document.getElementById("profilecanvas");
   ctx = cvs.getContext("2d"); /* Error in getContext("2d") */
   img = document.getElementById("profileImg");
   drawImg();
}
function drawImg() {
   ctx.drawImage(img, 0, 0);
}
window.onload = init();ID是正确的,并且与适当的canvas和img标签相对应。然而,我一直在使用TypeError: 'null' is not an object (evaluating 'cvs.getContext'),它似乎没有更进一步。我确定这是一些ID10T错误,但我希望有人能给我一个线索,是什么导致了这一点?谢谢。
编辑:好的,现在似乎可以使用<body onload="init()">了。但是,它只是偶尔显示,如果我尝试在$(document).ready()或document.onload上运行init(),我仍然不走运,并收到错误。有什么想法吗?
发布于 2016-03-29 19:01:37
这与实际问题无关,但由于这个问题是谷歌搜索getContex("2d") null时的第一个结果,所以我将解决方案添加到我的问题中:
确保使用getContext("2d")而不是getContext("2D") -注意小写的d。
https://stackoverflow.com/questions/6796194
复制相似问题