【发布时间】:2012-09-28 14:44:16
【问题描述】:
我正在尝试在页面顶部绘制一个巨大的画布矩形(某种灯箱背景),代码非常简单:
var el = document.createElement('canvas');
el.style.position = 'absolute';
el.style.top = 0;
el.style.left = 0;
el.style.zIndex = 1000;
el.width = window.innerWidth + window.scrollMaxX;
el.height = window.innerHeight + window.scrollMaxY;
...
document.body.appendChild(el);
// and later
var ctx = el.getContext("2d");
ctx.fillStyle = "rgba(0, 0, 0, 0.4)";
ctx.fillRect(0, 0, el.width, el.height);
有时(不总是)最后一行抛出:
组件返回失败码:0x80004005 (NS_ERROR_FAILURE) [nsIDOMCanvasRenderingContext2D.fillRect]
我一直在猜测是否会因为图像大小或画布下方的内容类型(例如嵌入视频播放)而发生这种情况,但显然不是。
所以我正在寻找有关如何隔离和/或解决此问题的任何想法。
【问题讨论】:
标签: javascript firefox canvas