MutationObserver 是什么

MutationObserver API 讓我們能監(jiān)聽 DOM 樹變化,該 API 設計用來替換掉在 DOM 3 事件規(guī)范中引入的 Mutation events。

Mutation events 是同步觸發(fā)的,每次變動都會觸發(fā)一次調(diào)用。 MutationObserver API 是異步觸發(fā)的, DOM 的變動并不會馬上觸發(fā),而是要等到當前所有 DOM 操作都結束才觸發(fā)。所以 MutationObserver 相比 Mutation events 性能要更高。

// 創(chuàng)建一個 MutationObserver 實例,監(jiān)聽樣式變化
this.dialogDomServer = new MutationObserver((mutationsList, observer) => {
  mutationsList.forEach((mutation) => {
    // mutation.target
    // mutation.type
  })
})

// 開始監(jiān)聽樣式變化
this.dialogDomServer.observe(dialogDom, {
  attributes: true,
  attributeFilter: ['style']
})

參考:

https://zhuanlan.zhihu.com/p/139315926

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容