应用场景: 屏蔽各种论坛上的主题链接
就是说如果元素内的任何文本内容含有某个关键字,那么就屏蔽掉整个元素,甚至上级元素。
一直想要这样的功能,但找了很久都没找到。
1 chucongqing 2018-04-08 09:23:39 +08:00 ![]() 油猴自己写一个? |
![]() | 2 greatghoul 2018-04-08 09:24:23 +08:00 ![]() 自己常看哪个论坛,自己写一个算了。 |
![]() | 3 dong3580 2018-04-08 09:34:09 +08:00 ![]() Adblock => 屏蔽此页面上的广告 参考一下这一块的代码 |
![]() | 4 DeweyReed 2018-04-08 10:21:21 +08:00 ![]() TamperMonkey 呀,比如 ``` (function() { 'use strict'; document.querySelectorAll('div[id^=adsBlock]').forEach(function(e) { e.parentNode.parentNode.removeChild(e.parentNode); }); })(); ``` 就可以删掉一些广告。有的网站用 AdBlock 屏蔽后,会留一个让你白名单的框框,用油猴删掉。想怎么改都行。 |
![]() | 5 rabbbit 2018-04-08 10:57:12 +08:00 via iPad ![]() uBlock Origin 使用:has-text 选择器 URL##元素选择器:has-text(关键词) |
![]() | 6 MuscleOf2016 2018-04-08 11:03:35 +08:00 ![]() 油猴自己写+1 |
![]() | 7 xuboying 2018-04-08 11:54:45 +08:00 ![]() @DeweyReed #4 这样的代码一般 bind 在什么事件里?现在的动态网页比较多,如果是 load 只能用一次,后面加载的就不行了 |
![]() | 8 patx 2018-04-08 12:21:18 +08:00 via Android ![]() adblock 了解下 |
![]() | 9 longear OP //谢谢大家,涨姿势了,写了个 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'); })(); |