私はWebアプリケーションのフロントエンドに取り組んでいます。すべてのコンテンツは、バックエンドから受け取ったJSONオブジェクトから生成されます。次に、このコンテンツをHTMLでラップし、DOMに追加します。私はjQueryappend()を使用してこれを行います。コンテンツが追加されたら、古いページをアニメーション化し、新しいページをアニメーション化します。
私の問題は、アニメーションが開始する前にコンテンツの読み込みが完了していないように見えることです。また、アニメーションが開始する前に、すべてのCSSが有効になるわけではないようです。アニメーションが完了すると表示されます。
アニメーションを開始する前に、コンテンツの追加が終了したかどうかを確認する必要があると想定しました。append()は同期しているはずですが、チェックしても問題ありません。
これは、関連するアニメーションのアイデアを提供するためのコードスニペットです。(注:これは私のコードのすべてではなく、私が何をしているのかを正確に理解するための最低限のことです)
- 'mainTransitionContainer'は、新しいコンテンツが追加された要素です。
- 'transitionWidth'は、古いページと新しいページの両方の幅を使用して決定される変数です。
- これらのページは両方ともmainTransitionContainerの内部にあり、隣り合って浮かんでいます。
$(mainTransitionContainer).append(newElement); $(mainTransitionContainer).ready(function () { $(mainTransitionContainer).animate({ right: transitionWidth }, 2000,'easeInOutQuart'}); });
これは、コンテンツの読み込みが完了したかどうかを確認する正しい方法ですか?
私のコンテンツが正しく表示されない理由を誰かが知っていますか?
jQueryアニメーションはおそらく私のCSSスタイルに影響を与えていますか?
誰かアドバイスはありますか?よろしくお願いします。