AdblockPlus 規則允許特定 IFrame 內的所有內容

AdblockPlus 規則允許特定 IFrame 內的所有內容

我正在玩一個瀏覽器遊戲,您可以透過觀看各種廣告/電影/特別優惠/等來賺取遊戲內的高級貨幣。我的 Firefox Addon Adblock Plus 在攔截所有這些廣告方面做得非常好 - 這使我無法獲得祖母綠,因為腳本無法識別正在觀看的廣告(這沒關係)。

這些特殊廣告從各個外部網域載入到 IFrame 中。大致來說,結構是這樣的: MainSite@DomainA > iframe#gameIframeID@DomainA > iframe#adIframeID@DomainB

因此,MainSite 包含一個包含遊戲的 iframe,其中包含另一個包含廣告的 iframe。

由於我是編寫 ABP-Rules 的新手,到目前為止我還沒有找到可行的解決方案。 如何建立 ABP 異常規則,允許 iframe 中具有 id(或類別)的所有內容adIframeID,這樣廣告和必要的腳本就可以正確加載,但 MainSite 上的廣告仍然正常被阻止?

我知道如何將特定網域列入白名單,因此我可以將整個廣告網域列入白名單,但該網域可能會發生變化,我只希望他們的廣告出現在這個遊戲中,而不是其他地方;-)

答案1

如果 iFrame 有一個與之關聯的 URL(即不是匿名 iFrame),您可以編寫一個過濾器,如下所示:

@@||example.com/iframe?showad=true$subdocument,document,domain=foo.com

鑑於 iFrame 的 URL 是“https://example.com/iframe?showad=true」且 iFrame 顯示的網域是「foo.com」。

這樣的篩選器會將 iFrame(子文件)及其內部的所有內容(文件)列入白名單。

相關內容