1

我在一个应用程序中绘制了一些画布,它在每个浏览器中都运行良好(除了明显的 ie7/8),但我还必须让它在 iPad 上运行。当我在 iPad 上查看调试控制台时,我看到了这个错误:

INDEX_SIZE_ERR:DOM 异常 1:索引或大小为负数,或大于允许值

我查看了此处有关该错误的其他一些线程,但似乎没有一个适用于已回答(尤其是因为我在桌面版本上也没有看到此错误)。

错误发生在这部分代码中:

base.draw = function(x, y) {
        // ctx.clearRect(0, 0, canvas[0].width, canvas[0].height);
        console.log("base.draw()");
        console.log(x);
        console.log(y);
        console.log(canvasWidth);
        console.log(canvasHeight);
        console.log($(largeImage).width());
        console.log($(largeImage).height());
        ctx.drawImage(largeImage, x, y, canvasWidth, canvasHeight, 0, 0, canvasWidth, canvasHeight);
    }

对于日志,我得到的所有正数和宽度/高度都是正确的。largeImage 指的是作为 HTML 标记一部分的图像,因此我认为在尝试绘制之前未加载图像不是问题(并且如上所述,宽度/高度日志正确,所以我假设这是不是问题)。

任何人都知道为什么会在 iPad 上而不是在桌面上发生这种情况?

4

0 回答 0