問題タブ [preloadjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - CreateJS - 画像のビットマップが表示されない場合がある
答えはPreloadJsにあると思いますが、単純化するために、コードでそれをいじくり回す作業を削除しました。最も重要な部分は次のとおりです。
さて、問題は、これが私のコードを初めて実行したときに得られるものです。
何も間違ってない。
ただし、最初にアクセスしたときは、画像はまだキャッシュされておらず、表示されません。ページをハードリセットした場合も同じことが起こります(ctrl + r
Windowsの場合)。初めてページにアクセスしたときは画像がないため、これは明らかに大きな問題です。これが私が試したことです:
PreloadJs、これが解決策になる可能性が最も高いですが、これまでのコードでは機能していません。
これは私の現在の
/li>PreloadJS
コードです:
私のコードをトリガーします
onload
。問題はまだ発生します。- のような遅延
setTimeout
。非常にハックであることに加えて、大幅な遅延があっても、一定の確率でしか修正されません。 - この回答のようなもの。これはハード リセットには機能しますが、キャッシュをクリアすると、ロードに時間がかかりすぎて、基本的に最初のロードを修正するというアイデア全体が台無しになりました。
したがって、基本的に、これらのソリューションのいくつかは時々機能しますが、一部はハックであり、すべてがパーセンテージまたはそれ以下の時間しか機能しません。最善の解決策は何ですか?
1 つのことは、ページのサイズを変更するなどの操作を行うと、画像が表示されることです。サンプル コードでこれを再現できませんでした。これは、最初に実行したときにstage.update
表示する準備ができていなかったため、表示されなかったために発生したと思います。繰り返しますが、1 秒後にもう一度実行するだけstage.update
では十分ではありません。
注:回答がなく、1年前であり、詳細を提供できず、コメントで提供された唯一の解決策が失敗したため、これがこの質問の複製であるとは思いません。
javascript - css 画像とサウンドを非同期的にプリロードする
サイトのすべてのアセットは、ユーザー インタラクションの後に表示されるオブジェクトの配列 (スライダーのようなもの) にあります。
プリロードが必要な約 150 個の小さなアイコンと約 100 個の小さなサウンドがあり、探していて、js 配列からアセットをプリロードすることに関連するものは何も見つかりませんでした。
画像を背景として使用し、オブジェクトからクラス名を取得しています。cssクラスから来ているので、すべての画像の準備ができていると思っていましたが、間違っていると思います
このリンクまたはこれに類似したものでうまくいく可能性がありますが、ドキュメントを読んだ後、資産の起点がjsで管理される配列にある場合にそれを適用する方法が見つかりませんでした。