function create(htmlStr) {
var frag = document.createDocumentFragment(),
temp = document.createElement('div');
temp.innerHTML = htmlStr;
while (temp.firstChild) {
frag.appendChild(temp.firstChild);
}
return frag;
}
function add(identifier, html){
var frag = create(html);
document.body.insertBefore(frag, document.getElementById(identifier));
}
identifier
開発者ツールで確認したタグの文字列 ID が存在しhtml
ますidentifier
。frag
は真骨頂の html フラグメントであり、への呼び出しgetElementById
は真骨頂の要素を返します。つまり、どちらも文字列ではありません。で上記のエラーが発生するのはなぜinsertBefore
ですか?