下記のようなHTMLのときに、pをクリックしたら親のdivを消したいときはどうすればいいのでしょうか?
<div> <p>ここをクリックする</p> </div>
remove()ではない
jQueryで削除と言えばremove()ですが、これでは子以下も削除してしまいます。
$('div p').click(function(){ $(this).parent().remove(); //divとその中身が全て消えちゃう });
unwrap()を使う
親要素だけを削除したい場合はどうすればいいのでしょうか?
jQuery1.4系以降だとunwrap()が使えます。
$('div p').click(function(){ $(this).unwrap(); //divだけを消す });