Проблема отладки JavaScript: «Uncaught ReferenceError: холст не определен» - PullRequest
0 голосов
/ 19 июня 2019

Моя консоль браузера Chrome выдает ошибку, определенную выше, когда запускает мой код. Это только часть моего кода, и я следую структуре примера KeyBoard Navigation-Control, размещенного на w3.schools.com: (https://www.w3schools.com/graphics/tryit.asp?filename=trygame_controllers_keys).

Ранее у меня была функция mainCanvas в качестве функции, а для свойства canvas было определение "=" вместо ":". Сначала это работало нормально, но затем расхождение с руководством стало меня смущать. Как только я переключил свою функцию на объект - согласно учебнику - у меня появилась эта проблема. Я новичок в Javascript, и поэтому я очень ценю вашу помощь!

function parent(){
    mainCanvas.load();
}

  var mainCanvas = {

        canvas : document.getElementById("myCanvas"),

        load: function(){
            //ctx1.beginPath();
            ctx1 = canvas.getContext("2d");
            ctx1.canvas.width = (window.innerWidth)/2;
            ctx1.canvas.height = window.innerHeight;
            ctx1.fillStyle = "black";
            ctx1.fillRect(0, 0, ctx1.canvas.width, ctx1.canvas.width);
            //ctx1.fillStyle = "blue";
            //if (diffColor == true)
                //ctx1.fillStyle = "yellow";
            //ctx1.fillRect(30, 30, 100, 150);

            document.body.insertBefore(canvas, document.body.childNodes[0]);
            interval = setInterval(moveTracker, 20);

            window.addEventListener ("keydown", function(e){
                console.log(e.keyCode);
                mainCanvas.key = e.keyCode; //execute movement when key pressed
                if (e.keyCode == 38)
                    diffColor = true;
                else
                    diffColor = false;
            });
            window.addEventListener ("keyup", function(e){
                    mainCanvas.key = false; //stop movement once key is released
                    })
        },

        clear: function(){
            ctx1.clearRect(0,0, canvas.width, canvas.height);
        }
        //ctx1.fill();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...