Meneame

Quita el adblocker popup y otra mierda

< Feedback on Meneame

Review: Good - script works

§
Posted: 2025-02-24

¡Gracias por tu curro!

He añadido un par de funciones: Quitar el banner gigante y restaurar el comportamiento de hacer click en el titular, independientemente de la página en la que estés, para que te lleve a la noticia original.

Por si tienes interés en actualizar el script, te lo dejo por aquí

(function() {
    'use strict';

    // Función para eliminar elementos molestos (diálogos, anuncios, etc.)
    function fixBody(retries) {
        if (retries <= 0) return; // Detenemos la recursión al agotar los reintentos

        // Restaurar el estilo original del body
        document.body.removeAttribute('style');

        // Eliminar diálogos molestos
        const dialogsSelectors = [
            '.fc-dialog.fc-ab-dialog',
            '.fc-dialog-container'
        ];
        dialogsSelectors.forEach(selector => {
            const element = document.querySelector(selector);
            if (element) element.remove();
        });

        // Eliminar el contenedor del enlace que contenga "clickio.com"
        const clickioLink = document.querySelector('a[href*="clickio.com"]');
        if (clickioLink && clickioLink.parentNode) {
            clickioLink.parentNode.remove();
        }

        // Eliminar anuncios y otros elementos indeseados
        const adsSelectors = [
            '.ads-interlinks',
            '.__lxG__geo_es',
            '.addoor-widget'
        ];
        adsSelectors.forEach(selector => {
            document.querySelectorAll(selector).forEach(el => el.remove());
        });

        // Reintentar en 100ms para capturar nuevos elementos que se carguen dinámicamente
        setTimeout(() => fixBody(retries - 1), 100);
    }
    fixBody(100);

    // Para URLs que no contengan "story", eliminar elementos adicionales
    if (!document.location.href.includes('story')) {
        function fixCrap() {
            document.querySelectorAll('.news-summary + div').forEach(div => {
                div.remove();
            });
        }
        setTimeout(() => {
            fixCrap();
            window.addEventListener('scroll', fixCrap);
        }, 1000);
    }

    // Actualizar el enlace del h2 con la URL que se encuentra en .showmytitle (atributo title)
    function updateH2Link() {
        const titleElement = document.querySelector('.showmytitle');
        const h2Link = document.querySelector('h2 a');
        if (titleElement && h2Link) {
            const newURL = titleElement.getAttribute('title');
            if (newURL) {
                h2Link.href = newURL;
            }
        }
    }
    window.addEventListener('load', updateH2Link);

})();

Post reply

Sign in to post a reply.