自身と子孫要素を残して親要素を削除

自身と子孫要素を残して親要素を削除するには、次のような方法で可能です。

次のHTMLからid属性値outerを持つ要素の親要素を削除し、自身と子孫要素は残す方法です。

HTML

<div id="wrapper">
	<p>テキスト1<br>テキスト1</p>
	<div id="container">
		<div id="outer">
			<div id="inner">
				<p>テキスト2<br>テキスト2</p>
			</div>
		</div>
		<p>テキスト3<br>テキスト3</p>
	</div>
	<p>テキスト4<br>テキスト4</p>
</div>

JavaScript

// #outer要素の親要素を取得
var parentElem = document.getElementById('outer').parentNode;

// 親要素から最初の子要素を取得して親要素の上に子要素を移動
while (parentElem.firstChild) {
	parentElem.parentNode.insertBefore(parentElem.firstChild, parentElem);
}

// 空の親要素を削除
parentElem.parentNode.removeChild(parentElem);

JavaScript逆引きリファレンス一覧へ戻る