私は現在 Javascript を学んでおり、私の章の 1 つは「Mutation Observer」です。新しい div がページに追加されたかどうかを検出してコンソールに表示する単純な関数を作成しようとしています。ただし、このメッセージが表示され、このエラーを修正する方法を見つけるのに苦労しています。誰かが私が間違っていることを説明してくれれば、とても感謝しています。前もって感謝します!
不明な TypeError: 'MutationObserver' で 'observe' を実行できませんでした: パラメータ 1 はタイプ 'Node' ではありません。
これまでのところ、これは私が書いたコードです:
document.getElementById("Button").onclick = function(){
var Add = document.createElement('div');
Add.setAttribute("class", "Alpha");
Add.appendChild(document.createTextNode("Test"));
document.getElementById('Frame').appendChild(Add);
};
var Divs = document.querySelectorAll("div");
var Observer = new MutationObserver(function(mutations){
mutations.forEach(function(mutation){
for(var i = 0; i <= mutation.addedNodes.length; i++){
if(!(mutation.addedNodes[i] == null)){
console.log(mutation.addedNodes[i].innerHTML);
}
}
});
});
Observer.observe(Divs, {childList: true, subtree:true});
.Alpha{
color:red;
}
<button id="Button">Generate a new div</button>
<div id="Frame"></div>