Fil rouge : sur le journal Basta!, je veux virer le pop-up « Bien s'informer, c'est déjà s'engager » qui propose de s'inscrire à une newsletter ou de soutenir.
Le sélecteur d'uBlock Origin permet de générer, en mode clic-clic, les règles qui font disparaître le pop-up et le fond noir :
basta.media##.lity-wrap
basta.media##.lity-ready.lity-inline.lity-opened.c-popin.lity.box_modalbox.box_mediabox
Mais on ne peut pas scroller sur la page.
En regardant le DOM avec l'outil « inspecteur » des outils de développement web (ça n'apparaît pas dans le code source, car c'est du JavaScript qui produit ça), on voit ceci : <html class="page_article ltr fr js lity-active rvgyiqzhhi idc0_341" […] >
.
Hum… On retrouve le nom du pop-up, « lity ». Si l'on supprime la valeur « lity-active » de l'attribut « class » de l'élément « html », on peut à nouveau scroller.
Pour supprimer une classe avec uBlock Origin, il suffit de lire la doc' : basta.media##+js(rc, lity-active, html)
.
Hum… Ça ne fonctionne pas. J'ai essayé au pif les paramètres de la fonction, basta.media##+js(rc, lity-active, html, stay)
: cela fonctionne. Le JavaScript qui ajoute cette classe doit s'exécuter plusieurs fois, pas uniquement quand la page devient interactive (alors qu'uBlock Origin s'exécute à ce moment-là uniquement).
Ainsi, pour surfer en paix sur Basta!, les règles pour uBlock Origin sont :
basta.media##.lity-wrap
basta.media##.lity-ready.lity-inline.lity-opened.c-popin.lity.box_modalbox.box_mediabox
basta.media##+js(rc, lity-active, html, stay)
Plus simple et rapide, désactiver le JavaScript sur Basta! (avec uMatrix, par exemple) fonctionne également très bien sans effet secondaire. :D