jpdb-reviews-ui-tweak

Light rework of the JPDB review page

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==UserScript==
// @name        jpdb-reviews-ui-tweak
// @version     0.0.1
// @match       *://jpdb.io/review*
// @run-at      document-start
// @description Light rework of the JPDB review page
// @license GPLv2
// @namespace https://greasyfork.org/users/888266
// ==/UserScript==

let doc = window.document;

function fixNavbar() {
    // Remove every navigation menu except the "Learn (n)"
    doc
        .querySelectorAll(".menu .nav-item:not(:first-child)")
        .forEach(element => element.remove());

    // Remove the button used to toggle the navigation menu on or off
    doc
        .querySelectorAll(".menu-icon")
        .forEach(element => element.remove());

    // Change the navigation menu maxHeight in order to be always visible
    let parent = doc
        .querySelectorAll(".menu")
        .item(0);
    parent.style.maxHeight = "30px";
    parent.style.transition = "off";

    // Tweak the navigation menu entry, removing the link and changing the message
    let entry = doc
        .querySelectorAll(".menu .nav-item")
        .item(0);

    entry.outerHTML = entry.outerHTML
        .replace(/<a/g, '<div')
        .replace(/<\/a>/g, '</div>')
        .replace("Learn", "Items left");
}

doc.addEventListener('DOMContentLoaded', () => {
    fixNavbar();
});