プロジェクトの一環として、javascript でトピック モデリングのLDAアルゴリズムを実装しています。ボタンをクリックすると、LDA を実行する関数が呼び出されます。ただし、これは非常に負荷の高いタスクであるため、関数が呼び出されたときにブラウザーが約 15 秒間ハングしていました (処理中にアニメーション GIF の読み込みが機能していませんでした)。
そこで、この機能をweb workerとして実装しました。これにより、ハングアップの問題が解決されますが、ロード アニメーションが数秒以内に消え、その後 12 ~ 14 秒後に結果が表示されます。
処理中にローダーをアニメーション化する方法はありますか? ローディング アニメーションが消える前に、Web ワーカーが計算を完了するのを待ちます。
スクリプトは非同期で呼び出され、ローダーは jQuery の ajax イベントに次のようにアタッチされます。
$('#spinner').bind("ajaxSend", function() {
$(this).show();
}).bind("ajaxComplete", function() {
$(this).hide();
});