Last active
February 24, 2020 17:32
-
-
Save kmuenkel/c5d6fabaccc4db275cddf0bf13ee53b4 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// var objectIsDomElement = function (object) { | |
// return typeof HTMLElement === "object" ? object instanceof HTMLElement : | |
// typeof object === "object" && object.nodeType === 1 && typeof object.nodeName === "string"; | |
// }; | |
// | |
// var getAllDomObjects = function() { | |
// var objs = []; | |
// var walkTheObject = function (obj) { | |
// Object.keys(obj).forEach(function (key) { | |
// var value = objs[key]; | |
// if (value && objectIsDomElement(value)) { | |
// if (objs.indexOf(value) < 0) { | |
// objs.push(value); | |
// walkTheObject(value); | |
// } | |
// } | |
// }); | |
// }; | |
// walkTheObject(this); | |
// return objs; | |
// }; | |
// | |
// var makeDocument = function () { | |
// var nodes = getAllDomObjects(); | |
// var doc = new Document; | |
// nodes.forEach(function (node) { | |
// doc.append(node); | |
// }); | |
// return doc; | |
// }; | |
var elementChange = function(query) { | |
window.MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; | |
var observers = []; | |
var observer = function (query) { | |
observers.forEach(function (observer) { | |
observer.disconnect(); | |
}); | |
// var dummyDoc = makeDocument(); | |
var dummyDoc = document; | |
var elements = dummyDoc.querySelectorAll(query); | |
elements.forEach(function (element) { | |
var observer = new MutationObserver(function (mutation) { | |
console.log(mutation); | |
console.trace(); | |
}); | |
observer.observe(element, {attributes: true}); | |
observers.push(observer); | |
}); | |
}; | |
observer(); | |
setInterval(observer, 50, query); | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment