почему событие img не запускается? - PullRequest
0 голосов
/ 30 июня 2019

Я прикрепил событие onload к изображению, созданному new image(); Но событие onload, похоже, никогда не запускается. console.log внутри функции, которая должна запускаться при срабатывании onload, никогда не отображается.

Я также пытался использовать addEventListener вместо .onload. но это тоже не работает.

function init(){
    var main_canvas = document.getElementById('main_canvas');
    var bg_canvas = document.getElementById('background_canvas');

    if(main_canvas.getContext){
        var ctx = main_canvas.getContext('2d');
        var bg_ctx = bg_canvas.getContext('2d');

        let ball = new Image();   
        let box = new Image();

        console.log(ball);
        ball.onload = function() {
            console.log('positiv');
            bg_ctx.drawImage(box,150,100);
            bg_ctx.drawImage(box,150,600);
            ctx.drawImage(ball,350,125);
        }
        ball.src = 'ball.png';
        box.src = 'box.png';
    }
}

window.addEventListener('load', init);

Ожидаемый результат должен быть: 1) (из-за console.log(ball);) Это прекрасно работает.

2) вывод: позитив (потому что ball.onload запущен), НО ЭТОГО НЕ СЛУЧАЕТСЯ !!

...