Mein Pro-Adblock-Overlay und uMatrix (update)
Samstag, 18.6.2016, 10:41 > daMaxkalo meinte gestern:
Seit Monaten geht mir die Begrüßung auf Deiner Seite auf die Nerven - ich gehe immer mit Mozilla+uMatrix rein und werde angenölt, daß ich mir doch mal ... z. B. uMatrix anschaffen sollte. Nicht sehr smart. Sorry
Heute früh hatte ich gerade nichts Besseres zu tun, also habe ich meine Linux-VM angeworfen, sie erstmal stundenlang aktualisiert, einen Snapshot angelegt und anschließend uMatrix installiert. Und ja, uMatrix filtert das Overlay nicht weg
Nun muss ich kurz ausholen, um die Diskussion auf ein sinnvoles Niveau zu heben. Mein Pro-Adblock-Plugin erzeugt per JavaScript ein DIV-Element mit id="ad-space"
in der Annahme, dass ein vernünftiger AdBlocker ein solches Element wegfiltert. Die meisten AdBlocker verwenden dazu die EasyList, auf der zigtausende solche Elemente hinterlegt sind, und das funktioniert problemlos.
Das Problem mit uMatrix ist, dass es eben KEINE Filterliste wie EasyList verwendet, sondern Werbung nur anhand von Hosts rauswirft. Das heißt, uMatrix filtert komplette Webserver weg, nicht aber einzelne Werbeelemente. Nun kommt das "OOPS"-Overlay ja nicht von einem anderen Webserver, sondern direkt aus meinem Blog. uMatrix erlaubt leider auch nicht, ein bestimmtes CSS-Element zu filtern, sondern arbeitet nach dem Prinzip "ganz oder gar nicht": man kann CSS komplett verbieten oder komplett erlauben, einzelne Elemente kann man nicht filtern. Oder habe ich da was falsch verstanden?
Nun stehe ich echt vor einem Problem: wie kriege ich jetzt uMatrix dazu, das "OOPS" zu filtern? Oder wie kriegt der|die Anwender|in uMatrix dazu, das OOPS wegzuwerfen?
Ich bin da im Moment mit meinem Latein echt am Ende. Ich kann mir nicht vorstellen, dass ich per JavaScript herausfinde, ob z.B. uMatrix installiert ist und dann einfach das Overlay gar nicht erst erzeuge.
Als Friedensangebot habe ich einen neuen Link "Ich will das hier nie wieder sehen" ans Ende des "OOPS" gepackt, der einen 10 Jahre gültigen Cookie setzt. Wer allerdings seinen Firefox auf "Keep Cookies Until I Close Firefox" gestellt hat oder Cookies auch mal manuell löscht, dem wird auch das nicht helfen.
PS: abgesehen davon zerstört uMatrix meinen Radioplayer, weil es ganz dreist sämtliche Verbindungen zu laut.fm unterbindet. Ich bin von uMatrix ehrlich gesagt nicht so richtig überzeugt...
Update: ich habe ein (ziemlich hässliches) Workaround gefunden: ich binde jetzt ein Javascript von einem anderen URL ein (http://www.themadguys.de/ads/adsbygoogle.js), das nur eine einzige Zeile enthält, in der eine Variable namens isAdsDisplayed
auf true
gesetzt wird. uMatrix verhindert das Laden dieses Scripts, somit ist isAdsDisplayed
immer undefined
und deshalb wird dann in showadspace()
das Overlay nicht mehr angezeigt. Aber wie gesagt: das finde ich eher hässlich, weil es eben bedeutet, dass das Plugin eine Datei auf einem anderen Server benötigt. Das muss irgendwie besser gehen...
Jaaa... wird der betroffene Kamerad nicht einfach eine Ausnahme in uMatrix für deine Seite setzen können?
@Vex: Ne Ausnahme bringt ja eben nix Außerdem würde ich gerne das Plugin so hinbekommen, dass er das Ding nicht zu sehen bekommt, schließlich HAT er ja sowas ähnliches wie einen AdBlocker installiert und ich preise in dem Overlay ja ausgerechnet uMatrix an, also sollte das mit uMatrix auch funktionieren, ne? Das ist meine persönliche professionelle Attitüde
Ja man muss (oder musste bisher) auf deiner Seite einfach Skripte deaktivieren, damit man nicht genervt wurde.
uMatrix ist genial. Es geht aber eher um Cookies und Skripte (Frames, Plugins, XHR) die im Hintergrund Dinge machen, die ich nicht will, bzw. die ich nicht mitbekomme. Deshalb nutze ich es.
Es ist also kein AdBlocker (im gegensatz zu uBlock) und wer es benutzt, weiss das er manchmal mehrere Seiten freischalten muss (bei youtube Videos sind es auch mindestens drei Domains).
Deshalb bearbeite ich manchmal die Filterliste von Hand nach, da du dann Domains komplett freischalten kannst die ohne Skripte nicht funktionieren (wie z.b. last.fm). Wenn du das nur im Panel machst, dann ist sie nur auf der geraden aktuellen frei geschaltet.
Aber ich wüßte jetzt auch kein Ausweg aus deinem Dilemma. Wobei deine "häßliche" Lösung eigentlich genau das Richtige macht, die die einen Domainblocker benutzen, blocken das externe JS mir Variabeln und die anderen das Element.
@struppi: also komm... ohne Scripte haste weder Radio noch Wurli! Und ohne Wurli taugt daMax nun wirklich mal gar nix.
Was ist denn Wurli? :-\
Auch wenn ich deinen Musikgeschmack schätze (und auch schon neues entdeckt habe), aber das integrierte Radio läuft nicht bei mir, da muss ich dich enttäuschen
Ich hab ihn(?) gefunden
*LOL*
@struppi: Wurli gefunden? Und der läuft? Okay gut. Ja, ist ein er
Aber dann musst du mir mal sagen, wie genau das Radio nicht funktioniert. Denn das ist auch pures JavaScript, das sollte ja bei dir laufen. Es bindet einen Stream von http://laut.fm ein, das wird z.B. duch uMatrix verhindert.
Welchen Browser mit welchen Plugins auf welchem Betriebssystem verwendest du denn?
Doch es läuft, wenn ich JS aktviere - das war ja der Punkt, dass man auf deiner Seite das JS nicht aktivieren konnte, weil einem dann diese Meldung das man doch uMatrix installieren sollte begrüßte. Und ohne JS kein Radio - so war das gemeint.
Ich habe jetzt laut.fm allgemein erlaubt, aber ich hör eigentlich lieber meine eigenen Sachen. Momentan läuft ständig: https://www.youtube.com/watch?v=JuKoCbsOkO0
Ja wurli gefunden
@struppi:
Ja, nee, dann sind wir ja d'accord
Nice video, nice music. Me gusta. Könnte ins Radio kommen