Connect4 - Game 我正在制作一个connect4游戏,当我将画布对象返回到一个数组时:
var canvas = document.getElementsByTagName('canvas');
它返回前18个对象。 Chrome javascript控制台(console.log(canvas [id]);)打印出html标记。但是在18以上它只写出画布#+ id。 因此,当我点击底部框以绘制圆圈时,我会收到错误。
function create_circle(index) {
if (start==0) {
color = 'red';
start++;
} else if (start==1) {
color = 'black';
start--;
} else {
color = 'white';
}
var circle = document.canvas[index].getContext('2d'); // IT SHOWS THE ERROR HERE
circle.beginPath();
circle.arc(40, 40, 40, 0, 2 * Math.PI, false);
circle.fillStyle = color;
circle.fill();
}
答案 0 :(得分:2)
您使用document.canvas
代替canvas
变量。浏览器没有维护此类document.canvas
集合。
// remove---------v
var circle = /*document.*/canvas[index].getContext('2d');