Canvas drawImage, работает в скрипке, но не в хроме

Итак, я пишу скрипт для печати некоторых плиток, пока что он должен рисовать только одну плитку в верхнем левом углу. Он отлично работает в JSfiddle, на который я ссылаюсь ниже, но не в хроме.

Если я войду в свою хромированную консоль и наберу initalRoom.tileGrid[1].tileImage.drawClipped(0,0,32,32,0,0);, это даст желаемые результаты, в которых плитка появится в верхнем левом углу, но эта команда уже вызывается, когда документ готов.

Кто-нибудь может помочь? Спасибо.

пример JSfiddle


person Simon Kay    schedule 11.12.2015    source источник
comment
Используйте image.onload, чтобы дождаться загрузки изображения, прежде чем пытаться его нарисовать.   -  person markE    schedule 11.12.2015


Ответы (1)


Я прошел курс JS в прошлом году и обнаружил, что в Canvas Chrome не хватает других браузеров, таких как FireFox, попробуйте Firefox и посмотрите, работает ли ваш код.

person Hobson    schedule 11.12.2015
comment
Да, фаерфокс работает. Но все равно как-то раздражает. У вас есть идеи, как заставить это работать в хроме? - person Simon Kay; 11.12.2015
comment
У Дамы был ответ, он просто собирался опубликовать его. В хроме нет ничего плохого, вы просто не ждете загрузки изображения, прежде чем пытаться его нарисовать. - person Blindman67; 11.12.2015
comment
@Blindman67Blindman67, если вы думаете, что можете улучшить обман, вперед, мы сделали это вики сообщества (как вопрос, так и ответ) для этой цели :-) - person Kaiido; 11.12.2015
comment
@Kaiido Не та же проблема. Это просто неспособность дождаться загрузки изображения, но должно быть много тех, кто уже ответил. - person Blindman67; 11.12.2015