V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Kenmin
V2EX  ›  程序员

AdBlock 会屏蔽 className 中包含 ad 的页面元素(前端坑)

  •  
  •   Kenmin · 2023-12-01 10:37:47 +08:00 · 2890 次点击
    这是一个创建于 388 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在中台写了一个添加广告的表单,前端代码类似于

    <div class="ad-form">...</div>
    

    测试通过上生产,收到客户反馈找不到这个功能,鸡同鸭讲折腾了好久才发现是 AdBlock 扩展的锅。

    我是没想到 AdBlock 这类去广告扩展的原理居然是如此的简单粗暴。查了一下不光是ad,其他包含诸如ads adv advert advertisement banner banners的元素,className ,js ,css 都会受到影响,统统display: none !important;

    感谢 AdBlock 丰富了我的加班记录 (╯‵□′)╯︵┻━┻

    22 条回复    2023-12-04 10:31:09 +08:00
    stevenhan
        1
    stevenhan  
       2023-12-01 10:40:43 +08:00
    那最后怎么解决的呀,你们改还是让客户把 adblock 关了再用?
    leaflxh
        2
    leaflxh  
       2023-12-01 10:45:18 +08:00   ❤️ 2
    <div class="fuck-da-form">
    检测到开启了广告拦截,可能会造成页面内容显示不完整
    </div>
    doco
        3
    doco  
       2023-12-01 10:49:00 +08:00
    我碰到过把页面上 twitter 图标屏蔽的, 开发的时候就找不到图标, 折腾半天是插件问题
    Kenmin
        4
    Kenmin  
    OP
       2023-12-01 10:49:16 +08:00
    @stevenhan 换了个 className
    jenhe
        5
    jenhe  
       2023-12-01 10:52:29 +08:00
    我 5 年前就发现了
    wangtian2020
        6
    wangtian2020  
       2023-12-01 11:05:41 +08:00
    三年前发现的,同事浏览器上看到的和我不一样,发现 ad 开头的 class 会被影响
    Nile20
        7
    Nile20  
       2023-12-01 11:08:20 +08:00 via Android
    这不屏蔽效果很好嘛,准确屏蔽了你新添加的、不在它已确认的屏蔽库中的广告😂
    e3c78a97e0f8
        8
    e3c78a97e0f8  
       2023-12-01 11:10:56 +08:00 via iPhone   ❤️ 5
    你的客户要添加一条广告,但是他从来不看别人的广告因为他有 adblock 。哈哈哈,虽然并没有什么不合理,但是还是有点讽刺。
    121819756
        9
    121819756  
       2023-12-01 11:10:57 +08:00
    这早就有了,js 等文件名也不能有
    BUHeF254Lpd1MH06
        10
    BUHeF254Lpd1MH06  
       2023-12-01 11:16:22 +08:00
    不但元素会拦截,接口带/ad/test 的目录,也会被屏蔽
    fox0001
        11
    fox0001  
       2023-12-01 11:19:02 +08:00 via Android
    url 含有广告相关敏感单词都会 block 。就是跟楼主有过相同经历😂
    BloodBlade
        12
    BloodBlade  
       2023-12-01 11:34:28 +08:00
    Azure 里面有不少带有 ad 字样的内容,有段时间 AdGuard 会把这些都屏蔽了,打开 Azure 网站就出问题。
    Rache1
        13
    Rache1  
       2023-12-01 11:40:39 +08:00
    第一份工作的时候,有一个广告管理模块,接口的 URL 就是 /advertising/save 这种,然后就发现请求会失败
    the1812
        14
    the1812  
       2023-12-01 13:07:10 +08:00 via iPhone
    以前写过反广告脚本叫 remove-ad 也被拦截了,最后改名叫 remove-promotion
    davin
        15
    davin  
       2023-12-01 13:12:25 +08:00
    十几年前有个浏览器,叫遨游( Maxthon )的,也是这么干的
    seeu2ex
        16
    seeu2ex  
       2023-12-01 13:54:54 +08:00
    @Kenmin 可以做提示,让用户排除当前产品地址
    dsgdsfh
        17
    dsgdsfh  
       2023-12-01 14:13:36 +08:00
    我的 AdGuard Home 会拦截 ad.开头的域名
    Xheldon
        18
    Xheldon  
       2023-12-01 14:49:49 +08:00
    加载的 css js 等 url link 类型的中的路径里面也不能有,15 年刚入行的时候被坑过,发明这方法检测广告的也是个人才
    GV
        19
    GV  
       2023-12-01 15:29:59 +08:00
    现在都开始给 id class 开混淆了,手动屏蔽广告也变得麻烦了
    weixiangzhe
        20
    weixiangzhe  
       2023-12-01 17:18:42 +08:00
    adblock 一直是这样的,我一般写 ad 都会写成 axd
    lilei2023
        21
    lilei2023  
       2023-12-01 17:22:57 +08:00
    吃一堑长一智, 这个坑我也遇到过,你试试 接口中带 ad !
    jifengg
        22
    jifengg  
       2023-12-04 10:31:09 +08:00
    看你没写,再补充一条:API 中包含 ad 的,也大概率会被 ban ,我吃过这个亏。所以设计 api 的时候,path ,query 等都尽量避开 ad 这个缩写词
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2948 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 14:14 · PVG 22:14 · LAX 06:14 · JFK 09:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.