この記事を書いてる人
オジー
- WordPress歴8年
- 副業でデザイン/開発を受託→法人化
- WordPressで会社HPをオリジナルテーマで作成
- 主軸はデザイン、たまにフロントエンドのコードも書きます
- 事業会社/受託会社 両方経験あり
オジー
よくフォームでの値が変わったら〇〇という監視をするときにchange
を使うことがあると思いますが、divなどの中身が変更されたときに使用するのはご存知ですか? changeが使えればいいのですが、changeではdivの変更を受け取ることができません。そんなときはDOMSubtreeModified propertychange
を使用することで監視することができます。
今回はその使用方法を紹介したいと思います。
$(document).ready(function() {
$('.div_change_lst').on('DOMSubtreeModified propertychange', function() {
alert('removed');
});
$('.div_change_remove_btn').click(function() {
$(this).parent().remove();
});
});
div_change_lst
に変化があったときにDOMSubtreeModified propertychange
の中のfunctionが実行されます。上記の場合だとalertでremovedと表示するようにしています。
削除ボタンの方は、div_change_remove_btn
がクリックされたときに、クリックされたボタンの親要素、つまりdiv_change_item
をremove()
でDOM要素ごと取り除いています。
div_change_item
がDOM要素から取り除かれたら、div_change_lst
に変化があったことになるので、alertが実行されるというコードになります。
form要素に対してchange
で監視を行うことはよくあったのですが、divに対しての監視をするのは今回が初めてでしたので覚書として記事にしました。あまり使う機会はないと思いますが、参考にしくれれば幸いです。
では。
この記事が気に入ったら
フォローしてね!