meneame.net - Mostrar/ocultar detalles en meneos

Añadir desplegable a meneos para mostrar/ocultar detalles.

当前为 2021-10-23 提交的版本,查看 最新版本

// ==UserScript==
// @name        meneame.net - Mostrar/ocultar detalles en meneos
// @namespace   http://tampermonkey.net/
// @version     0.2
// @description Añadir desplegable a meneos para mostrar/ocultar detalles.
// @author      ᵒᶜʰᵒᶜᵉʳᵒˢ
// @include     *.meneame.net/*
// @icon www.meneame.net/favicon.ico
// @grant none
// ==/UserScript==

// ---- SCRIPT values ----
const DEFAULT_HIDE = true; // true or false

// ---- API values ----
const MENEO_CLASS = '.news-body';
const MENEO_SENDER = '.news-submitted';
const MENEO_DETAILS = '.news-details';
const MENEO_TAGS = '.news-tags';
const MENEO_CLICS = '.clics';

const CSS_HIDECONTROLS = "#btnControl_XX {display: none;} " +
      "#btnControl_XX:checked + label {transform:rotate(180deg);}";
const CSS_DROPDOWN = ".btnCHK {background-image:linear-gradient(-180deg, #f5720e 0%, #fe4a00 100%);border: 1px solid rgba(122, 47, 11, 0.45);display: block;color: #fff;text-decoration: none;font-weight: bold;border-radius: 3px;outline: none;vertical-align: baseline;margin: 0;padding: 0;box-sizing: border-box;font-size: 12px;text-align: center;overflow: hidden !important;}"
const CSS_DROPDOWN_CLASS = "Dropdown_XX";

const HTML_Checkboxes = "<input type='checkbox' id='btnControl_XX' style='display: none;'/><label class='btnCHK' for='btnControl_XX' onclick=\"javascript:$('.Dropdown_XX').toggle();\">&nbsp;V&nbsp;</label>";

var CSS_PAGE = "";
var i = -1;
var css_Str = '';

// ===================
function DoDirtyThings() {
    AddDropdownMeneos();
    addGlobalStyle();    
};

function AddDropdownMeneos() {
	let meneos = document.querySelectorAll(MENEO_CLASS);
	CSS_PAGE = CSS_DROPDOWN;
	meneos.forEach( function(node) {
        i++;
        InsertCheckBoxDropdown(node);
        Hide_Element(node, MENEO_SENDER);
        Hide_Element(node, MENEO_DETAILS);
        Hide_Element(node, MENEO_TAGS);
	});
	meneos = "";
    i = "";
}

function InsertCheckBoxDropdown(meneoBodyNode) {
    let findClicsNode = meneoBodyNode.querySelector(MENEO_CLICS);
    if (findClicsNode != null) {
        var strCSSToHide = CSS_HIDECONTROLS.replace(/XX/g, i);
        CSS_PAGE += strCSSToHide;
        var strLabelCheckbox = HTML_Checkboxes.replace(/XX/g, i);
        findClicsNode.insertAdjacentHTML('afterend', strLabelCheckbox);
    }
    findClicsNode="";
}

function Hide_Element(meneoBodyNode, classToHide) {
    let elementToHide = meneoBodyNode.querySelector(classToHide);
    if (elementToHide != null) {
        css_Str = CSS_DROPDOWN_CLASS.replace(/XX/g, i);
        if (DEFAULT_HIDE) {
            elementToHide.style.display = 'none';
        }
        elementToHide.classList.add(css_Str);
    };
    elementToHide="";
}

function addGlobalStyle() {
	var head, style;
	head = document.getElementsByTagName('head')[0];
	if (!head) { return; }
	style = document.createElement('style');
	style.type = 'text/css';
	style.innerHTML = CSS_PAGE;
	head.appendChild(style);
    CSS_PAGE = "";
}

DoDirtyThings();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址