Public code

【修正】How to use "this" on MutationObserver

JS生成したDOMにonclickなどのfunctionを付与したいとき、MutationObserverで生成を監視するが、MutationObserverの中ではthisが変わってしまうので、bindを使ってthisを継承する。
1
0
Screenshot!
Copy Code!
class sample{ onA(){ const target = document.getElementById("hoge"); //生成先のDOM let mo = new MutationObserver(this.onB.bind(this));//Thisをバインドする mo.obvserve(target, {childList: true});//targetにDomが生成されたら実行 } onB(){ const target = document.getElementById("fuga"); target.onclick = () => { this.onC(); } } onC(){ alert("Hello,world!"); } }
Back to Home