私は IE 9 を使用しており、次のように呼び出します。
document.attachEvent('onpropertychange', function(){
console.log("triggered");
});
を返すコンソールでtrue
。
次に、属性を変更します。
$('div').eq(0).attr("data-url", "url");
triggered
これは属性を変更しますが、コンソールには出力しません。私は何を間違っていますか?
私は IE 9 を使用しており、次のように呼び出します。
document.attachEvent('onpropertychange', function(){
console.log("triggered");
});
を返すコンソールでtrue
。
次に、属性を変更します。
$('div').eq(0).attr("data-url", "url");
triggered
これは属性を変更しますが、コンソールには出力しません。私は何を間違っていますか?
MSDN によると、このイベントはバブルしないため、ハンドラーを に配置しても、要素のdocument
プロパティの変更は観察されません。div
また、のサブプロパティを変更するとelement.dataset
ハンドラーがトリガーされるかどうかもわかりません。テストする価値があると思います。
おそらく、このイベントを次のようにすべての div に添付してみてください。
var divs = $('div');
$.each(divs, function(divObj){
divObj.attachEvent('onpropertychange', function(){
console.log("triggered");
});
});