0

私のプロジェクトはサーバーからロードされます。preloadjs を使用して画像をロードし、それを使用してビットマップを作成しています。画像が読み込まれた後、新しい createjs.Bitmap(path); を使用してビットマップを作成できます。firfox を使用している場合、Chrome を使用している場合は使用できません。クロムの場合、次を使用する必要があります: new createjs.Bitmap(loader.getResult("idOfTheImage")); // ローダーは LoadQueue オブジェクトです

注: 上記は Chrome と Firefox の両方で機能します。

パスだけを使用するとFirefoxでは機能するのにChromeでは機能しない理由を知りたいです。

4

1 に答える 1

1

Bitmap に文字列を渡すと、イメージをロードするためのタグ要求が行われます。キャッシュにある場合は再リクエストしませんが、画像が XHR (LoadQueue のデフォルト) を使用してプリロードされている場合は、その画像に対する別のブラウザー リクエストが発生します。

既にキャッシュされている場合でも、文字列パスを渡すと、画像の準備が整うまでにわずかな遅延が発生します。つまり、ビットマップをすぐに描画することはできません。少し後でステージを更新すると、すべてのブラウザーに表示される可能性があります。

このため、常にロードされた結果を使用する必要があります。これにより、ビットマップを作成した直後に描画できるようになります。

于 2015-12-08T16:17:37.007 に答える