Я пытаюсь нарисовать изображение на холсте HTML:
var mainCanvas = document.getElementById('mainCanvas');
var ctx = mainCanvas.getContext('2d');
Я делаю запрос ajax и анализирую получаемые из него данные XML (работает отлично), а затем, когда рисую разные фигурына холсте это тоже работает на 100%.Не работает рисование изображения в следующем фрагменте кода:
$(data).find('Object').each(function(){
type = $(this).attr('type');
x = $(this).attr('X');
y = $(this).attr('Y');
switch(type){
case '2':
height = h_panel;
width = w_panel;
ctx.fillStyle = sColor;
ctx.fillRect(x,y,width,height);
break;
case '1':
var powerFactoryImg = new Image();
powerFactoryImg.onload = function(){
alert('test');
ctx.drawImage(powerFactoryImg,x,y,90,80);
};
powerFactoryImg.src = 'images/power_factory.png';
break;
//Other cases go here - they draw rectangles - all of them work
}
});
Я проверил с помощью Chrome Developer Tools, что изображение загружается;также вызывается оповещение в .onload.Код не работает ни в Chrome, ни в FF.В чем может быть проблема здесь?
Спасибо