diff --git a/ChineseFilter/sections/specific.txt b/ChineseFilter/sections/specific.txt index 5704436d623..bf5807a3890 100644 --- a/ChineseFilter/sections/specific.txt +++ b/ChineseFilter/sections/specific.txt @@ -1940,11 +1940,17 @@ sports.qq.com##.txp_ad[data-role="creative-player-pause-picture-container"] ! https://github.com/AdguardTeam/AdguardFilters/issues/163538 sports.qq.com,lpl.qq.com,v.qq.com#%#//scriptlet('set-constant', 'CreativePlayerwebPlugin.AD_EVENT.AD_DESTROY', '') sports.qq.com,lpl.qq.com,v.qq.com#%#//scriptlet('set-constant', 'CreativePlayerwebPlugin.AD_EVENT.AD_LOAD_START', '') +! https://github.com/AdguardTeam/AdguardFilters/issues/217837 ! https://github.com/AdguardTeam/AdguardFilters/issues/184076 ! https://github.com/AdguardTeam/AdguardFilters/issues/180379 ! https://github.com/AdguardTeam/AdguardFilters/issues/168881 ! https://github.com/AdguardTeam/AdguardFilters/issues/166649 sports.qq.com,news.qq.com,www.qq.com,v.qq.com,new.qq.com#%#//scriptlet('json-prune', 'ads') +! "v.qq.com" creates an iframe to obtain native "JSON" method, so we need to "patch" it +!+ NOT_PLATFORM(ext_ff) +v.qq.com#%#(()=>{const e={apply:(e,n,t)=>{const o=Reflect.apply(e,n,t);try{o instanceof HTMLIFrameElement&&o.matches('iframe[style="display: none;"]:not([src], [id])')&&o.contentWindow&&(o.contentWindow.JSON=window.JSON)}catch(e){}return o}};Node.prototype.appendChild=new Proxy(Node.prototype.appendChild,e)})(); +!+ PLATFORM(ext_ff) +v.qq.com#%#//scriptlet('trusted-create-element', 'head', 'script', '', '(()=>{const e={apply:(e,n,t)=>{const o=Reflect.apply(e,n,t);try{o instanceof HTMLIFrameElement&&o.matches(`iframe[style="display: none;"]:not([src], [id])`)&&o.contentWindow&&(o.contentWindow.JSON=window.JSON)}catch(e){}return o}};Node.prototype.appendChild=new Proxy(Node.prototype.appendChild,e)})();') ! https://github.com/AdguardTeam/AdguardFilters/issues/30701 ~sports.qq.com,~work.weixin.qq.com,qq.com#%#//scriptlet('json-prune', 'ad') !