新しく作成された要素(createElement()
)への参照を、DOMの既存の要素の後に挿入したままにするにはどうすればいいですか(insertAdjacentHTML()
)?私はinsertAdjacentHTML()
後elNew
/elNewInner
を使用する場合は、この例では`insertAdjacentHTML`と` createElement`
、あなたは、色が変化しないことがわかります。
var elOrig = document.getElementById('insertAfter');
// Create new element
var elNew = document.createElement('div'),
elNewInner = document.createElement('div');
elNewInner.textContent = 'I\'m a new element, but I\'m not red';
elNew.appendChild(elNewInner);
elOrig.insertAdjacentHTML('afterend', elNew.outerHTML);
// This doesn't change the color in the DOM
elNewInner.style.color = 'red';
<div id="insertAfter">Insert new element after me</div>
をへの参照を保持する方法はあります私がinsertAdjacentHTML
を使用した後の要素か、JavaScriptを使って同じことを達成するための他の方法がありますか?そのよう.outerHTML
で.insertAdjacentHTML
を使用するよりも
これは、質問の半分に答えています_他にも同じ方法でJavaScriptを実現していますか?なぜそれが動作しないのか興味があります。 – Tushar
@Tushar:最後の文章を読んでください。元の方法ではうまくいかなかった理由を示しています。 –
ありがとう、それは期待どおりに動作します。 – Daniel