Greasy Fork is available in English.

setMutationHandler

MutationObserver wrapper to wait for the specified CSS selector

Stan na 13-10-2015. Zobacz najnowsza wersja.

Ten skrypt nie powinien być instalowany bezpośrednio. Jest to biblioteka dla innych skyptów do włączenia dyrektywą meta // @require https://update.greasyfork.org/scripts/12228/80003/setMutationHandler.js

Autor
woxxom
Wersja
2.0.2
Utworzono
05-09-2015
Zaktualizowano
13-10-2015
Licencja
Brak licencji

MutationObserver wrapper to wait for an element (or elements) with the specified CSS selector.

First, load the function in your script metablock:

..............
// @require       https://greasyfork.org/scripts/12228/code/setMutationHandler.js
..............
// ==/UserScript==

Usage (single node, one-time change):

setMutationHandler(document, '.container p.some-child', function(nodes) {
    nodes[0].remove();
    this.disconnect(); // disconnect the observer, this is useful for one-time jobs
});

Usage (multiple nodes, the page is watched constantly for the added elements):

setMutationHandler(document, '.container p.some-child', function(nodes) {
    nodes.forEach(function(node) {
        node.style.display = 'none';
    });
    return true; // continue enumerating current batch of mutations
});

Usage (observe the changes only inside particular container element):

setMutationHandler(document.querySelector('.container-selector'), '.some-child', function(nodes) {
    nodes.forEach(function(node) {
        node.style.display = 'none';
    });
    return true; // continue enumerating current batch of mutations
});

You may want to make your userscript run at document-start to catch the mutations during page load:

..............
// @run-at        document-start
// @require       https://greasyfork.org/scripts/12228/code/setMutationHandler.js
..............
// ==/UserScript==