javascript - 指定哪个元素在多个元素上触发了 MutationObserver
问题描述
在以下SO-post的帮助下,我知道可以使用单个对象跟踪多个元素MutationObserver
。我想跟踪网站上两个元素的文本,所以我编写了以下脚本:
var seconds = document.getElementsByClassName('sr-lmt-0-ms-countdown__time srt-primary-7 srm-large')[2];
var minutes = document.getElementsByClassName('sr-lmt-0-ms-countdown__time srt-primary-7 srm-large')[3];
var callback = function(mutations) {
for (var mutation of mutations) {
// do something
// console.log(mutation + (minutes or seconds));
}
};
var observer = new MutationObserver(callback);
var config = {characterData: true, subtree: true};
observer.observe(minutes, config);
observer.observe(seconds, config);
如何更改此脚本,以便控制台显示哪个变量触发了MutationObserver
?
编辑
如果我检查mutation.target
,我会看到以下内容:
我不知道是否sec
或minutes
触发了突变?我该如何区分?
解决方案
let observer = new MutationObserver(mutationRecords => {
console.log(mutationRecords); // console.log(the changes)
});
推荐阅读
- javascript - 从 frida 挂钩的本机方法 basic_string 参数中读取值
- node.js - findByIdAndUpdate 不适用于 GridFs 对象
- c++ - GCC 如何在堆栈上创建一个数组而不用常量变量给出它的大小?
- linux - 当 cr3 设置为进程的目录库时,MMU 如何转换内核虚拟地址?
- pytest - 将测试嵌入与实现相同的模块中
- web3 - ModuleNotFoundError:运行 web3 python 代码时没有名为“lru”的模块
- filter - 我应该使用哪个应用程序来分析布隆过滤器
- python - 输出扩展节点有一些问题。我该如何解决?
- excel - 计算没有辅助列/表的平均投资价格
- algorithm - 模糊数的重新解释