私はAJAXベースのWebサイトを構築しており、すべてのWebサイトコンテンツがAJAXを介してロードされています。
一部のページには、コンテンツとともに読み込まれるCSSがあります(コードは次のとおりです)。HTMLとCSSが読み込まれたら、いくつかのスクリプトを実行して、画像の位置を変更したり、幅を変更したりします。
問題は、CSSルールが適用される前にJavaScriptが実行されることがあるということです。例:cssに従ってdiv幅を200pxにする必要がある場合、javascriptが1000pxと読み取ることがあるため、計算が間違ってしまいます。
私の調査では、読み込まれた画像だけでなく、読み込まれたCSSやその他すべてを検出するクロスブラウザソリューションは得られていません。
jQueryのAJAX関数を使用して目的のHTMLを取得します(この部分は正常に機能しています)。HTMLを取得したら、 jQueryのhtml関数を使用して適用します。
それが完了したら、このコードを使用して必要なcssをロードします。
css = document.createElement('link');
css.rel = 'stylesheet';
css.type = 'text/css';
css.media = "all";
css.href = url;
document.getElementsByTagName("head")[0].appendChild(css);
タイムアウト関数を使用することもできますが、それは単なる推測ではなく、スクリプトを実行する必要があるときにスクリプトが実行されることを確認したいと思います。何か提案はありますか?
編集私は説明をより明確にするためにこの画像を含めました