Adguardfilters: tvnow.de preroll video ads

Created on 15 Aug 2017  路  12Comments  路  Source: AdguardTeam/AdguardFilters

Description:
there are preroll video ads

  • Current behaviour:
    preroll video ads shown on going to
    https://www.tvnow.de/rtl2/curvy-supermodel/die-grosse-tanzchallenge/player

Screenshot:
https://image.prntscr.com/image/kVW6uMwxSEqADahjFMwl5Q.png

  • Expected behaviour:
    video should play without ads

System configuration

Information | value
--- | ---
Operating system: | Windows 7
Browser: | google chrome 60
Adguard version: | 2.6.7 browser extension
Adguard filters: | english filter,spyware filter , german filter

note=

Resolved Ads

Most helpful comment

It is not simple.
Try this

tvnow.de#%#"use strict";  function e(e, t) {       e.__defineGetter__("responseText", function() {               return t;       }), e.__defineGetter__("response", function() {               return t;       }); }  function t(t) {       try {               var n = JSON.parse(t.responseText);               n.ignoreAd = !0, n.noad = !0, n.geoblocked = !1, n.free = !0, n.blockadeText = "0",                n.format.enableAd = !1, n.format.hasFreeEpisodes = !0, n.format.isGeoBlocked = !1,                e(t, JSON.stringify(n));       } catch (e) {} }  function n() {       document.arrive(".button.now-freebutton > input.ng-empty", function() {               this && this.parentNode && this.parentNode.click();       }); }  var r = window.XMLHttpRequest.prototype.open;  window.XMLHttpRequest.prototype.open = function(e, n, o) {       return n.includes("/v3/movies/") && this.addEventListener("readystatechange", function() {               4 === this.readyState && t(this);       }, !0), r.apply(this, [].slice.call(arguments)); };  var o = function(e, t, n) {       function r(e, t, n) {               c.addMethod(t, n, e.unbindEvent), c.addMethod(t, n, e.unbindEventWithSelectorOrCallback),                c.addMethod(t, n, e.unbindEventWithSelectorAndCallback);       }       function o(e) {               e.arrive = d.bindEvent, r(d, e, "unbindArrive"), e.leave = f.bindEvent, r(f, e, "unbindLeave");       }       if (e.MutationObserver && "undefined" != typeof HTMLElement) {               var i = 0, c = function() {                       var t = HTMLElement.prototype.matches || HTMLElement.prototype.webkitMatchesSelector || HTMLElement.prototype.mozMatchesSelector || HTMLElement.prototype.msMatchesSelector;                       return {                               matchesSelector: function(e, n) {                                       return e instanceof HTMLElement && t.call(e, n);                               },                               addMethod: function(e, t, n) {                                       var r = e[t];                                       e[t] = function() {                                               return n.length == arguments.length ? n.apply(this, arguments) : "function" == typeof r ? r.apply(this, arguments) : void 0;                                       };                               },                               callCallbacks: function(e) {                                       for (var t, n = 0; t = e[n]; n++) t.callback.call(t.elem);                               },                               checkChildNodesRecursively: function(e, t, n, r) {                                       for (var o, i = 0; o = e[i]; i++) n(o, t, r) && r.push({                                               callback: t.callback,                                               elem: o                                       }), o.childNodes.length > 0 && c.checkChildNodesRecursively(o.childNodes, t, n, r);                               },                               mergeArrays: function(e, t) {                                       var n, r = {};                                       for (n in e) r[n] = e[n];                                       for (n in t) r[n] = t[n];                                       return r;                               },                               toElementsArray: function(t) {                                       return "undefined" == typeof t || "number" == typeof t.length && t !== e || (t = [ t ]),                                        t;                               }                       };               }(), l = function() {                       var e = function() {                               this._eventsBucket = [], this._beforeAdding = null, this._beforeRemoving = null;                       };                       return e.prototype.addEvent = function(e, t, n, r) {                               var o = {                                       target: e,                                       selector: t,                                       options: n,                                       callback: r,                                       firedElems: []                               };                               return this._beforeAdding && this._beforeAdding(o), this._eventsBucket.push(o),                                o;                       }, e.prototype.removeEvent = function(e) {                               for (var t, n = this._eventsBucket.length - 1; t = this._eventsBucket[n]; n--) e(t) && (this._beforeRemoving && this._beforeRemoving(t),                                this._eventsBucket.splice(n, 1));                       }, e.prototype.beforeAdding = function(e) {                               this._beforeAdding = e;                       }, e.prototype.beforeRemoving = function(e) {                               this._beforeRemoving = e;                       }, e;               }(), a = function t(r, o) {                       var t = new l(), i = this, a = {                               fireOnAttributesModification: !1                       };                       return t.beforeAdding(function(t) {                               var n, c = t.target;                               t.selector, t.callback, (c === e.document || c === e) && (c = document.getElementsByTagName("html")[0]),                                n = new MutationObserver(function(e) {                                       o.call(this, e, t);                               });                               var l = r(t.options);                               n.observe(c, l), t.observer = n, t.me = i;                       }), t.beforeRemoving(function(e) {                               e.observer.disconnect();                       }), this.bindEvent = function(e, n, r) {                               n = c.mergeArrays(a, n);                               for (var o = c.toElementsArray(this), i = 0; i < o.length; i++) t.addEvent(o[i], e, n, r);                       }, this.unbindEvent = function() {                               var e = c.toElementsArray(this);                               t.removeEvent(function(t) {                                       for (var r = 0; r < e.length; r++) if (this === n || t.target === e[r]) return !0;                                       return !1;                               });                       }, this.unbindEventWithSelectorOrCallback = function(e) {                               var r, o = c.toElementsArray(this), i = e;                               r = "function" == typeof e ? function(e) {                                       for (var t = 0; t < o.length; t++) if ((this === n || e.target === o[t]) && e.callback === i) return !0;                                       return !1;                               } : function(t) {                                       for (var r = 0; r < o.length; r++) if ((this === n || t.target === o[r]) && t.selector === e) return !0;                                       return !1;                               }, t.removeEvent(r);                       }, this.unbindEventWithSelectorAndCallback = function(e, r) {                               var o = c.toElementsArray(this);                               t.removeEvent(function(t) {                                       for (var i = 0; i < o.length; i++) if ((this === n || t.target === o[i]) && t.selector === e && t.callback === r) return !0;                                       return !1;                               });                       }, this;               }, s = function e() {                       function e(e) {                               var t = {                                       attributes: !1,                                       childList: !0,                                       subtree: !0                               };                               return e.fireOnAttributesModification && (t.attributes = !0), t;                       }                       function t(e, t) {                               e.forEach(function(e) {                                       var n = e.addedNodes, o = e.target, i = [];                                       null !== n && n.length > 0 ? c.checkChildNodesRecursively(n, t, r, i) : "attributes" === e.type && r(o, t, i) && i.push({                                               callback: t.callback,                                               elem: node                                       }), c.callCallbacks(i);                               });                       }                       function r(e, t, r) {                               if (c.matchesSelector(e, t.selector) && (e._id === n && (e._id = i++), -1 == t.firedElems.indexOf(e._id))) {                                       if (t.options.onceOnly) {                                               if (0 !== t.firedElems.length) return;                                               t.me.unbindEventWithSelectorAndCallback.call(t.target, t.selector, t.callback);                                       }                                       t.firedElems.push(e._id), r.push({                                               callback: t.callback,                                               elem: e                                       });                               }                       }                       var o = {                               fireOnAttributesModification: !1,                               onceOnly: !1,                               existing: !1                       };                       d = new a(e, t);                       var l = d.bindEvent;                       return d.bindEvent = function(e, t, n) {                               "undefined" == typeof n ? (n = t, t = o) : t = c.mergeArrays(o, t);                               var r = c.toElementsArray(this);                               if (t.existing) {                                       for (var i = [], a = 0; a < r.length; a++) for (var s = r[a].querySelectorAll(e), u = 0; u < s.length; u++) i.push({                                               callback: n,                                               elem: s[u]                                       });                                       if (t.onceOnly && i.length) return n.call(i[0].elem);                                       setTimeout(c.callCallbacks, 1, i);                               }                               l.call(this, e, t, n);                       }, d;               }, u = function e() {                       function t(e) {                               var t = {                                       childList: !0,                                       subtree: !0                               };                               return t;                       }                       function n(e, t) {                               e.forEach(function(e) {                                       var n = e.removedNodes, o = (e.target, []);                                       null !== n && n.length > 0 && c.checkChildNodesRecursively(n, t, r, o), c.callCallbacks(o);                               });                       }                       function r(e, t) {                               return c.matchesSelector(e, t.selector);                       }                       var o = {};                       f = new a(t, n);                       var e = f.bindEvent;                       return f.bindEvent = function(t, n, r) {                               "undefined" == typeof r ? (r = n, n = o) : n = c.mergeArrays(o, n), e.call(this, t, n, r);                       }, f;               }, d = new s(), f = new u();               t && o(t.fn), o(HTMLElement.prototype), o(NodeList.prototype), o(HTMLCollection.prototype),                o(HTMLDocument.prototype), o(Window.prototype);               var h = {};               return r(d, h, "unbindAllArrive"), r(f, h, "unbindAllLeave"), h;       } }(window, "undefined" == typeof jQuery ? null : jQuery, void 0);  document.addEventListener("DOMContentLoaded", n, !1);

All 12 comments

We can't block this ad by browser extension.
@AdamWr please check this rule with German IP with AG for Windows

||de-ipd.videoplaza.tv/proxy/distributor/$important,replace=/"vast":{"ad":\[.*?\]}}\]}\,/"vast":{"ad":[]}}]}\,/

@Vincent-Michael

I checked this and even without this rule I do not see ads with Adguard for Windows, but it seems to me that with this rule video loads faster.

Little offtopic...@alex-302 and @AdamWr, this extension work at browser EXTENSION level.....

https://chrome.google.com/webstore/detail/tv-now-adblock-werbefreie/kpmcfodpngaecgfkmpjfiicfppkojcjf?hl=en

I have to wait if some solution came for adguard browser extension.....

It is not simple.
Try this

tvnow.de#%#"use strict";  function e(e, t) {       e.__defineGetter__("responseText", function() {               return t;       }), e.__defineGetter__("response", function() {               return t;       }); }  function t(t) {       try {               var n = JSON.parse(t.responseText);               n.ignoreAd = !0, n.noad = !0, n.geoblocked = !1, n.free = !0, n.blockadeText = "0",                n.format.enableAd = !1, n.format.hasFreeEpisodes = !0, n.format.isGeoBlocked = !1,                e(t, JSON.stringify(n));       } catch (e) {} }  function n() {       document.arrive(".button.now-freebutton > input.ng-empty", function() {               this && this.parentNode && this.parentNode.click();       }); }  var r = window.XMLHttpRequest.prototype.open;  window.XMLHttpRequest.prototype.open = function(e, n, o) {       return n.includes("/v3/movies/") && this.addEventListener("readystatechange", function() {               4 === this.readyState && t(this);       }, !0), r.apply(this, [].slice.call(arguments)); };  var o = function(e, t, n) {       function r(e, t, n) {               c.addMethod(t, n, e.unbindEvent), c.addMethod(t, n, e.unbindEventWithSelectorOrCallback),                c.addMethod(t, n, e.unbindEventWithSelectorAndCallback);       }       function o(e) {               e.arrive = d.bindEvent, r(d, e, "unbindArrive"), e.leave = f.bindEvent, r(f, e, "unbindLeave");       }       if (e.MutationObserver && "undefined" != typeof HTMLElement) {               var i = 0, c = function() {                       var t = HTMLElement.prototype.matches || HTMLElement.prototype.webkitMatchesSelector || HTMLElement.prototype.mozMatchesSelector || HTMLElement.prototype.msMatchesSelector;                       return {                               matchesSelector: function(e, n) {                                       return e instanceof HTMLElement && t.call(e, n);                               },                               addMethod: function(e, t, n) {                                       var r = e[t];                                       e[t] = function() {                                               return n.length == arguments.length ? n.apply(this, arguments) : "function" == typeof r ? r.apply(this, arguments) : void 0;                                       };                               },                               callCallbacks: function(e) {                                       for (var t, n = 0; t = e[n]; n++) t.callback.call(t.elem);                               },                               checkChildNodesRecursively: function(e, t, n, r) {                                       for (var o, i = 0; o = e[i]; i++) n(o, t, r) && r.push({                                               callback: t.callback,                                               elem: o                                       }), o.childNodes.length > 0 && c.checkChildNodesRecursively(o.childNodes, t, n, r);                               },                               mergeArrays: function(e, t) {                                       var n, r = {};                                       for (n in e) r[n] = e[n];                                       for (n in t) r[n] = t[n];                                       return r;                               },                               toElementsArray: function(t) {                                       return "undefined" == typeof t || "number" == typeof t.length && t !== e || (t = [ t ]),                                        t;                               }                       };               }(), l = function() {                       var e = function() {                               this._eventsBucket = [], this._beforeAdding = null, this._beforeRemoving = null;                       };                       return e.prototype.addEvent = function(e, t, n, r) {                               var o = {                                       target: e,                                       selector: t,                                       options: n,                                       callback: r,                                       firedElems: []                               };                               return this._beforeAdding && this._beforeAdding(o), this._eventsBucket.push(o),                                o;                       }, e.prototype.removeEvent = function(e) {                               for (var t, n = this._eventsBucket.length - 1; t = this._eventsBucket[n]; n--) e(t) && (this._beforeRemoving && this._beforeRemoving(t),                                this._eventsBucket.splice(n, 1));                       }, e.prototype.beforeAdding = function(e) {                               this._beforeAdding = e;                       }, e.prototype.beforeRemoving = function(e) {                               this._beforeRemoving = e;                       }, e;               }(), a = function t(r, o) {                       var t = new l(), i = this, a = {                               fireOnAttributesModification: !1                       };                       return t.beforeAdding(function(t) {                               var n, c = t.target;                               t.selector, t.callback, (c === e.document || c === e) && (c = document.getElementsByTagName("html")[0]),                                n = new MutationObserver(function(e) {                                       o.call(this, e, t);                               });                               var l = r(t.options);                               n.observe(c, l), t.observer = n, t.me = i;                       }), t.beforeRemoving(function(e) {                               e.observer.disconnect();                       }), this.bindEvent = function(e, n, r) {                               n = c.mergeArrays(a, n);                               for (var o = c.toElementsArray(this), i = 0; i < o.length; i++) t.addEvent(o[i], e, n, r);                       }, this.unbindEvent = function() {                               var e = c.toElementsArray(this);                               t.removeEvent(function(t) {                                       for (var r = 0; r < e.length; r++) if (this === n || t.target === e[r]) return !0;                                       return !1;                               });                       }, this.unbindEventWithSelectorOrCallback = function(e) {                               var r, o = c.toElementsArray(this), i = e;                               r = "function" == typeof e ? function(e) {                                       for (var t = 0; t < o.length; t++) if ((this === n || e.target === o[t]) && e.callback === i) return !0;                                       return !1;                               } : function(t) {                                       for (var r = 0; r < o.length; r++) if ((this === n || t.target === o[r]) && t.selector === e) return !0;                                       return !1;                               }, t.removeEvent(r);                       }, this.unbindEventWithSelectorAndCallback = function(e, r) {                               var o = c.toElementsArray(this);                               t.removeEvent(function(t) {                                       for (var i = 0; i < o.length; i++) if ((this === n || t.target === o[i]) && t.selector === e && t.callback === r) return !0;                                       return !1;                               });                       }, this;               }, s = function e() {                       function e(e) {                               var t = {                                       attributes: !1,                                       childList: !0,                                       subtree: !0                               };                               return e.fireOnAttributesModification && (t.attributes = !0), t;                       }                       function t(e, t) {                               e.forEach(function(e) {                                       var n = e.addedNodes, o = e.target, i = [];                                       null !== n && n.length > 0 ? c.checkChildNodesRecursively(n, t, r, i) : "attributes" === e.type && r(o, t, i) && i.push({                                               callback: t.callback,                                               elem: node                                       }), c.callCallbacks(i);                               });                       }                       function r(e, t, r) {                               if (c.matchesSelector(e, t.selector) && (e._id === n && (e._id = i++), -1 == t.firedElems.indexOf(e._id))) {                                       if (t.options.onceOnly) {                                               if (0 !== t.firedElems.length) return;                                               t.me.unbindEventWithSelectorAndCallback.call(t.target, t.selector, t.callback);                                       }                                       t.firedElems.push(e._id), r.push({                                               callback: t.callback,                                               elem: e                                       });                               }                       }                       var o = {                               fireOnAttributesModification: !1,                               onceOnly: !1,                               existing: !1                       };                       d = new a(e, t);                       var l = d.bindEvent;                       return d.bindEvent = function(e, t, n) {                               "undefined" == typeof n ? (n = t, t = o) : t = c.mergeArrays(o, t);                               var r = c.toElementsArray(this);                               if (t.existing) {                                       for (var i = [], a = 0; a < r.length; a++) for (var s = r[a].querySelectorAll(e), u = 0; u < s.length; u++) i.push({                                               callback: n,                                               elem: s[u]                                       });                                       if (t.onceOnly && i.length) return n.call(i[0].elem);                                       setTimeout(c.callCallbacks, 1, i);                               }                               l.call(this, e, t, n);                       }, d;               }, u = function e() {                       function t(e) {                               var t = {                                       childList: !0,                                       subtree: !0                               };                               return t;                       }                       function n(e, t) {                               e.forEach(function(e) {                                       var n = e.removedNodes, o = (e.target, []);                                       null !== n && n.length > 0 && c.checkChildNodesRecursively(n, t, r, o), c.callCallbacks(o);                               });                       }                       function r(e, t) {                               return c.matchesSelector(e, t.selector);                       }                       var o = {};                       f = new a(t, n);                       var e = f.bindEvent;                       return f.bindEvent = function(t, n, r) {                               "undefined" == typeof r ? (r = n, n = o) : n = c.mergeArrays(o, n), e.call(this, t, n, r);                       }, f;               }, d = new s(), f = new u();               t && o(t.fn), o(HTMLElement.prototype), o(NodeList.prototype), o(HTMLCollection.prototype),                o(HTMLDocument.prototype), o(Window.prototype);               var h = {};               return r(d, h, "unbindAllArrive"), r(f, h, "unbindAllLeave"), h;       } }(window, "undefined" == typeof jQuery ? null : jQuery, void 0);  document.addEventListener("DOMContentLoaded", n, !1);

bingo!!!!!!! its working ,thanx a lot....
btw what that rule does?

I don't know:)
This script is from that extension.

Where that extension can work?
Check this instead of previous:

tvnow.de#%#"use strict";function e(e,t){e.__defineGetter__("responseText",function(){return t}),e.__defineGetter__("response",function(){return t})}function t(t){try{var n=JSON.parse(t.responseText);n.ignoreAd=!0,n.noad=!0,n.geoblocked=!1,n.free=!0,n.blockadeText="0",n.format.enableAd=!1,n.format.hasFreeEpisodes=!0,n.format.isGeoBlocked=!1,e(t,JSON.stringify(n))}catch(e){}}function n(){document.arrive(".button.now-freebutton > input.ng-empty",function(){this&&this.parentNode&&this.parentNode.click()})}var r=window.XMLHttpRequest.prototype.open;window.XMLHttpRequest.prototype.open=function(e,n,o){return n.includes("/v3/movies/")&&this.addEventListener("readystatechange",function(){4===this.readyState&&t(this)},!0),r.apply(this,[].slice.call(arguments))};var o=function(e,t,n){function r(e,t,n){c.addMethod(t,n,e.unbindEvent),c.addMethod(t,n,e.unbindEventWithSelectorOrCallback),c.addMethod(t,n,e.unbindEventWithSelectorAndCallback)}function o(e){e.arrive=d.bindEvent,r(d,e,"unbindArrive"),e.leave=f.bindEvent,r(f,e,"unbindLeave")}if(e.MutationObserver&&"undefined"!=typeof HTMLElement){var i=0,c=function(){var t=HTMLElement.prototype.matches||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector;return{matchesSelector:function(e,n){return e instanceof HTMLElement&&t.call(e,n)},addMethod:function(e,t,n){var r=e[t];e[t]=function(){return n.length==arguments.length?n.apply(this,arguments):"function"==typeof r?r.apply(this,arguments):void 0}},callCallbacks:function(e){for(var t,n=0;t=e[n];n++)t.callback.call(t.elem);},checkChildNodesRecursively:function(e,t,n,r){for(var o,i=0;o=e[i];i++)n(o,t,r)&&r.push({callback:t.callback,elem:o}),o.childNodes.length>0&&c.checkChildNodesRecursively(o.childNodes,t,n,r)},mergeArrays:function(e,t){var n,r={};for(n in e)r[n]=e[n];for(n in t)r[n]=t[n];return r},toElementsArray:function(t){return "undefined"==typeof t||"number"==typeof t.length&&t!==e||(t=[t]),t}}}(),l=function(){var e=function(){this._eventsBucket=[],this._beforeAdding=null,this._beforeRemoving=null};return e.prototype.addEvent=function(e,t,n,r){var o={target:e,selector:t,options:n,callback:r,firedElems:[]};return this._beforeAdding&&this._beforeAdding(o),this._eventsBucket.push(o),o},e.prototype.removeEvent=function(e){for(var t,n=this._eventsBucket.length-1;t=this._eventsBucket[n];n--)e(t)&&(this._beforeRemoving&&this._beforeRemoving(t),this._eventsBucket.splice(n,1));},e.prototype.beforeAdding=function(e){this._beforeAdding=e},e.prototype.beforeRemoving=function(e){this._beforeRemoving=e},e}(),a=function t(r,o){var t=new l(),i=this,a={fireOnAttributesModification:!1};return t.beforeAdding(function(t){var n,c=t.target;t.selector,t.callback,(c===e.document||c===e)&&(c=document.getElementsByTagName("html")[0]),n=new MutationObserver(function(e){o.call(this,e,t)});var l=r(t.options);n.observe(c,l),t.observer=n,t.me=i}),t.beforeRemoving(function(e){e.observer.disconnect()}),this.bindEvent=function(e,n,r){n=c.mergeArrays(a,n);for(var o=c.toElementsArray(this),i=0;i<o.length;i++)t.addEvent(o[i],e,n,r);},this.unbindEvent=function(){var e=c.toElementsArray(this);t.removeEvent(function(t){for(var r=0;r<e.length;r++)if(this===n||t.target===e[r])return!0;return!1})},this.unbindEventWithSelectorOrCallback=function(e){var r,o=c.toElementsArray(this),i=e;r="function"==typeof e?function(e){for(var t=0;t<o.length;t++)if((this===n||e.target===o[t])&&e.callback===i)return!0;return!1}:function(t){for(var r=0;r<o.length;r++)if((this===n||t.target===o[r])&&t.selector===e)return!0;return!1},t.removeEvent(r)},this.unbindEventWithSelectorAndCallback=function(e,r){var o=c.toElementsArray(this);t.removeEvent(function(t){for(var i=0;i<o.length;i++)if((this===n||t.target===o[i])&&t.selector===e&&t.callback===r)return!0;return!1})},this},s=function e(){function e(e){var t={attributes:!1,childList:!0,subtree:!0};return e.fireOnAttributesModification&&(t.attributes=!0),t}function t(e,t){e.forEach(function(e){var n=e.addedNodes,o=e.target,i=[];null!==n&&n.length>0?c.checkChildNodesRecursively(n,t,r,i):"attributes"===e.type&&r(o,t,i)&&i.push({callback:t.callback,elem:node}),c.callCallbacks(i)})}function r(e,t,r){if(c.matchesSelector(e,t.selector)&&(e._id===n&&(e._id=i++),-1==t.firedElems.indexOf(e._id))){if(t.options.onceOnly){if(0!==t.firedElems.length)return;t.me.unbindEventWithSelectorAndCallback.call(t.target,t.selector,t.callback)}t.firedElems.push(e._id),r.push({callback:t.callback,elem:e})}}var o={fireOnAttributesModification:!1,onceOnly:!1,existing:!1};d=new a(e,t);var l=d.bindEvent;return d.bindEvent=function(e,t,n){"undefined"==typeof n?(n=t,t=o):t=c.mergeArrays(o,t);var r=c.toElementsArray(this);if(t.existing){for(var i=[],a=0;a<r.length;a++)for(var s=r[a].querySelectorAll(e),u=0;u<s.length;u++)i.push({callback:n,elem:s[u]});if(t.onceOnly&&i.length)return n.call(i[0].elem);setTimeout(c.callCallbacks,1,i)}l.call(this,e,t,n)},d},u=function e(){function t(e){var t={childList:!0,subtree:!0};return t}function n(e,t){e.forEach(function(e){var n=e.removedNodes,o=(e.target,[]);null!==n&&n.length>0&&c.checkChildNodesRecursively(n,t,r,o),c.callCallbacks(o)})}function r(e,t){return c.matchesSelector(e,t.selector)}var o={};f=new a(t,n);var e=f.bindEvent;return f.bindEvent=function(t,n,r){"undefined"==typeof r?(r=n,n=o):n=c.mergeArrays(o,n),e.call(this,t,n,r)},f},d=new s(),f=new u();t&&o(t.fn),o(HTMLElement.prototype),o(NodeList.prototype),o(HTMLCollection.prototype),o(HTMLDocument.prototype),o(Window.prototype);var h={};return r(d,h,"unbindAllArrive"),r(f,h,"unbindAllLeave"),h}}(window,"undefined"==typeof jQuery?null:jQuery,void 0);document.addEventListener("DOMContentLoaded",n,!1)

yes that also work.
what do you mean by 'Where that extension can work?' 馃槄

Sites

i just tried tvnow.de.... another german user need to confirm other sites that work with that extension

ok, added.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

adguard-bot picture adguard-bot  路  4Comments

TPS picture TPS  路  4Comments

adguard-bot picture adguard-bot  路  3Comments

adguard-bot picture adguard-bot  路  4Comments

adguard-bot picture adguard-bot  路  3Comments