JS 实时监听页面元素变化

说明

通常在编写文章时添加此配置,可以根据文章标签的变化实时生成文章目录,方便把握页面整体结构。

1、MutationObserver 所观察的DOM变动(即上面代码的option对象),包含以下类型:

想要观察哪一种变动类型,就在option对象中指定它的值为true。

需要注意的是,不能单独观察subtree变动,必须同时指定childList、attributes和characterData中的一种或多种。

除了变动类型,option对象还可以设定以下属性:

2、disconnect方法用来停止观察。发生相应变动时,不再调用回调函数。

3、takeRecord方法用来清除变动记录,即不再处理未处理的变动。

MutationRecord 对象

DOM对象每次发生变化,就会生成一条变动记录。这个变动记录对应一个MutationRecord对象,该对象包含了与变动相关的所有信息。Mutation Observer 进行处理的一个个变动对象所组成的数组。

MutationRecord对象包含了DOM的相关信息,有如下属性:

示例

编辑文章时同步生成目录

其他

豫ICP备2020036358号-2