我最近创建了一个简单的js应用程序,它充当了我在这里使用GitHub页面http://leachrode.github.io/托管的儿童着色书。当我访问它时,它对我来说非常适合,但是从任何其他计算机看起来它都失败了(如果打开它的标签不会先死掉,那么很长一段时间后它会延迟并最终产生响应)我真的不确定为什么会这样。当其他人试图在GitHub之外的服务器上托管它时,结果完全一样。
代码位于https://github.com/leachrode/leachrode.github.io。我会尝试在这里发布相关部分,但我完全不知道相关部分是什么。
在Firefox中打开它时,还有一个(我认为虽然我可能错了)单独的问题,浏览器抱怨第198行的getImageData的第一个参数不是有限的浮点值,原因我也可以'弄清楚:
function pickUpColor(x, y) {
var gameCanvas = document.getElementById("gameCanvas");
var ctx = gameCanvas.getContext("2d");
var newColour = ctx.getImageData(x, y, 1, 1);
if (newColour.data[0] === 255 && newColour.data[1] === 255 && newColour.data[2] === 255) {
var testColour = ctx.getImageData(420, 620);
if (testColour.data[0] === 255 && testColour.data[1] === 255 && testColour.data[2] === 255) {
curColour=[newColour.data[0],newColour.data[1],newColour.data[2]];
}
} else {
curColour=[newColour.data[0],newColour.data[1],newColour.data[2]];
}
}
以下是:
function feedback(event) {
var x = event.offsetX;
var y = event.offsetY;
if (y < 550 && !(y < 48 && x < 345)) {
fastflood(x,y, curColour);
} else {
pickUpColor(x,y, curColour);
}
}
编辑:该应用似乎无法在Firefox中运行,因为它不支持offsetX或offsetY http://help.dottoro.com/ljjqvtaf.php或https://bugzilla.mozilla.org/show_bug.cgi?id=547004。因此,我只是想让它在Chrome中运行,以便找出当有人运行它而不是我时它挂起的原因