2015-12-08 1 views
0

Мой проект загружен с сервера. Я использую preloadjs для загрузки изображения, а затем используя его для создания растрового изображения. После загрузки изображения растровое изображение можно создать с помощью новых createjs.Bitmap (путь); если вы используете firfox, но при использовании Chrome их нельзя использовать. для хром, мы должны использовать: новый createjs.Bitmap (loader.getResult ("idOfTheImage")); // loader - объект LoadQueueCreateJS - Зачем использовать только путь при создании createjs Растровое изображение работает для Firefox, но не для Chrome

Примечание: вышеизложенное работает как для Chrome, так и для Firefox.

Так что я хочу знать, почему использование только пути работает в Firefox, но не в Chrome.

ответ

1

Передача строки в битмап заставляет ее сделать запрос тега для загрузки изображения. Если он находится в кеше, он не будет повторно запрашивать его, но если изображение было предварительно загружено с использованием XHR (по умолчанию в LoadQueue), это приведет к другому запросу браузера для изображения.

Даже если он уже кэширован, при передаче строкового пути будет небольшая задержка до того, как изображение будет готово, что означает, что битмап не будет доступен для немедленного рисования. Если вы немного обновите сцену, это, скорее всего, появится во всех браузерах.

Из-за этого вы должны всегда использовать загруженный результат. Это гарантирует, что битмап можно будет нарисовать сразу же после его создания.

+0

Большое спасибо за ответы на мой вопрос. Я сейчас немного понимаю об этом. Но я хочу узнать больше о хроме, как в том, что поведенческое различие существует в хроме от поведения Firefox. Любая идея? Спасибо заранее! – Khyati

+0

Может быть, как браузеры справляются с кэшированными запросами. – Lanny

Смежные вопросы