- JavaScript
-
2024-08-27
onchangeイベントはform要素のinputではないdiv等の要素では検知することが出来ません。
そんな時はどうすれば良いでしょうか?その方法をご紹介します。
MutationEvent ※非推奨
そんな時、以前はこんな方法がありました。
※サンプルコードではjQueryを使用しています。
サンプルのHTML
<input type="button" id="click_me" value="Click!"> <div id="sample"></div>
DOMSubtreeModified propertychangeイベントを使って変更を検知する
$(document).ready(function() {
$('#sample').on('DOMSubtreeModified propertychange', function() {
alert('Change!');
});
$('#click_me').click(function() {
$('#sample').text('Change!');
});
});
しかしながら上記のMutationEventは非推奨となっています。
現在は代わりにMutationObserverを使って同様のことが出来るようになっています。




