Итак, я использую любые объектно-ориентированные параметры, чтобы попытаться сделать аккуратный статический класс изображений, поэтому все, что мне нужно сделать, это добавить указанный класс в Canvas и он выберется! Чтобы проверить, все ли работает, я добавил несколько предупреждений. Теперь моя функция начинает извергать «неопределенный» при третьем оповещении.Почему-то мой класс не может определить некоторые переменные
function StaticImage(imgsource, cancontext, ex, wy) {
this.x = ex;
this.y = wy;
this.context = cancontext;
alert("Image class instantiated! " + imgsource);
this.draw = function() {
this.image = new Image();
this.image.src = imgsource;
alert("Draw function called!");
this.image.onload = function() {
alert(this.image + " loaded! drawing on: " + this.context + " at: " + this.x + ":" + this.py);
};
this.cancontext.drawImage(this.image, this.x, this.y);
}
}
так, что бы класс, и это немного JavaScript, используемые на HTML-странице, которая держит Canvas. Сначала он создает bla.jpg изображение, а затем он делает то же самое, только с классом ...
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
var bla = new Image();
bla.src = "bla.jpg";
bla.onload = function() {
context.drawImage(bla, 50, 50);
};
var lol = new StaticImage("bla.jpg", context, 200, 200);
lol.draw();