対応するHTMLもページに挿入されると、スタイルシートに動的にロードされる次の関数があります。
これはすべてうまくいきます。挿入されたhtmlは非表示になり、スタイルシートが読み込まれると、表示に設定されます。
function _addCssFile(filename, fragment) {
var stylesheet = doc.createElement("link");
stylesheet.setAttribute("rel", "stylesheet");
stylesheet.setAttribute("type", "text/css");
stylesheet.setAttribute("href", filename);
doc.getElementsByTagName("head")[0].appendChild(stylesheet);
stylesheet.onload = function(){
fragment.setAttribute("style", "visibility:visible;");
}
}
ただし、htmlのセクションに複数のcssファイルが挿入される可能性があるため、配列内のすべてのcssファイルがDOMに正常に挿入されたことを検出できる必要があります。
上記の関数は、含まれているすべてのcssファイルに対して実行されます。スタイルシートの配列全体が挿入されたら、イベントを発生させるにはどうすればよいですか?ご覧のとおり、挿入されたhtmlは現在、最初にロードされたスタイルシートと後続の各ファイルで表示されるように設定されています。