
Estou jogando um jogo de navegador onde você pode ganhar moeda premium no jogo assistindo a vários anúncios/filmes/ofertas especiais/etc. Meu Firefox Addon Adblock Plus está fazendo um ótimo trabalho ao bloquear todos esses anúncios - o que me impede de obter as esmeraldas, já que os scripts não reconhecem o anúncio como sendo assistido (o que é normal).
Esses anúncios especiais são carregados em um IFrame de vários domínios externos. Então, aproximadamente, a estrutura é assim:
MainSite@DomainA > iframe#gameIframeID@DomainA > iframe#adIframeID@DomainB
Portanto o MainSite contém um iframe com o jogo, que contém outro iframe com os anúncios.
Como sou novo na escrita de regras ABP, não encontrei uma solução funcional até agora. Como posso criar uma regra de exceção ABP, que permita tudo dentro do iframe com o id (ou classe)adIframeID, para que o anúncio e os scripts necessários sejam carregados corretamente, mas os anúncios no MainSite ainda sejam bloqueados normalmente?
Eu sei como colocar um domínio específico na lista de permissões, então posso colocar o domínio de anúncio completo na lista de permissões, mas esse domínio pode mudar e eu só quero seus anúncios dentro deste jogo e em nenhum outro lugar ;-)
Responder1
Se o iFrame tiver uma URL associada a ele (ou seja, não um iFrame anônimo), você poderá escrever um filtro como tal:
@@||example.com/iframe?showad=true$subdocument,document,domain=foo.com
Dado que a URL do iFrame é "https://example.com/iframe?showad=true" e que o domínio em que o iFrame é mostrado é "foo.com".
Esse filtro colocará o iFrame (subdocumento) e tudo dentro dele (documento) na lista de permissões.