FunctionHooker.js

Hook most functions on runtime via the function name

This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://update.greasyfork.org/scripts/469993/1214452/FunctionHookerjs.js

Aŭtoro
TetteDev
Versio
0.1
Kreita
2023/07/02
Ĝisdatigita
2023/07/02
Licenco
N/A

Example Usage

const hooker = new FunctionHooker();
hooker.hook('window.addEventListener', (...args) => 
{
    const dissallowedEvents = ["pagehide"]
    if (dissallowedEvents.includes(args[0])) return;

    // gets the unhooked original function if you need to call it in the hook
    const o = hooker.getOriginal("window.addEventListener");

    // addEventListener only has either 2 or 3 arguments
    if (args.length == 3) o(args[0], args[1], args[2]);
    else if (args.length == 2) o(args[0], args[1]);
});