V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
longear
V2EX  ›  浏览器

有没有这样的浏览器扩展插件,可以根据关键字 block 掉一个元素或级联的元素

  •  
  •   longear · 2018-04-08 09:16:34 +08:00 · 3654 次点击
    这是一个创建于 2425 天前的主题,其中的信息可能已经有所发展或是发生改变。

    应用场景: 屏蔽各种论坛上的主题链接

    就是说如果元素内的任何文本内容含有某个关键字,那么就屏蔽掉整个元素,甚至上级元素。

    一直想要这样的功能,但找了很久都没找到。

    9 条回复    2018-04-08 13:59:55 +08:00
    chucongqing
        1
    chucongqing  
       2018-04-08 09:23:39 +08:00   ❤️ 1
    油猴自己写一个?
    greatghoul
        2
    greatghoul  
       2018-04-08 09:24:23 +08:00   ❤️ 1
    自己常看哪个论坛,自己写一个算了。
    dong3580
        3
    dong3580  
       2018-04-08 09:34:09 +08:00   ❤️ 1
    Adblock => 屏蔽此页面上的广告 参考一下这一块的代码
    DeweyReed
        4
    DeweyReed  
       2018-04-08 10:21:21 +08:00   ❤️ 1
    TamperMonkey 呀,比如
    ```
    (function() {
    'use strict';
    document.querySelectorAll('div[id^=adsBlock]').forEach(function(e) {
    e.parentNode.parentNode.removeChild(e.parentNode);
    });
    })();
    ```
    就可以删掉一些广告。有的网站用 AdBlock 屏蔽后,会留一个让你白名单的框框,用油猴删掉。想怎么改都行。
    rabbbit
        5
    rabbbit  
       2018-04-08 10:57:12 +08:00 via iPad   ❤️ 2
    uBlock Origin
    使用:has-text 选择器
    URL##元素选择器:has-text(关键词)
    MuscleOf2016
        6
    MuscleOf2016  
       2018-04-08 11:03:35 +08:00   ❤️ 1
    油猴自己写+1
    xuboying
        7
    xuboying  
       2018-04-08 11:54:45 +08:00   ❤️ 1
    @DeweyReed #4 这样的代码一般 bind 在什么事件里?现在的动态网页比较多,如果是 load 只能用一次,后面加载的就不行了
    patx
        8
    patx  
       2018-04-08 12:21:18 +08:00 via Android   ❤️ 1
    adblock 了解下
    longear
        9
    longear  
    OP
       2018-04-08 13:59:55 +08:00
    //谢谢大家,涨姿势了,写了个 TamperMonkey 用的脚本,用于屏蔽在煎蛋无聊图的某些 ID 发的图,分割线以下复制即可。
    //=================================================
    // ==UserScript==
    // @name 煎蛋不想看到的 ID
    // @namespace http://tampermonkey.net/
    // @version 0.1
    // @description try to take over the world!
    // @author You
    // @match http://jandan.net/*
    // @grant none
    // ==/UserScript==

    (function() {
    'use strict';
    var keywords = [
    "某某 1",
    "某某 2",
    "某某 3" ];
    var keyW_Regex = new RegExp (keywords.join('|'), "i"); //-- The "i" makes it case insensitive.

    var removeCount =0;
    document.querySelectorAll('div[class^=author]').forEach(
    function(e) {
    if (keyW_Regex.test (e.innerHTML ) ) {
    e.parentNode.parentNode.removeChild(e.parentNode);
    removeCount++;
    }
    });
    $("<p style='color:red;'> 移除 " + removeCount + "个 </p>").appendTo('ol.commentlist');

    })();
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1078 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:30 · PVG 03:30 · LAX 11:30 · JFK 14:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.