您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
在搜索结果页面全程护眼。
当前为
// ==UserScript== // @name 百度广告强力屏蔽 // @namespace http://greasyfork.icu/users/159546 // @version 1.0 // @description 在搜索结果页面全程护眼。 // @author LEORChn // @include *://www.baidu.com/* // @run-at document-start // @grant none // ==/UserScript== var inited=false; (function(){ recheck(); })(); function recheck(){ init(); if(load())return; setTimeout(recheck,100); } function init(){ // call once when start loading page if(inited) return; if(ft('body').length==0) return; // write code here block(); //inited=true; } function load(){ // call once when loaded page if(document.readyState.toLowerCase()=='complete'){ // write code here protector10sec(); return true; } } function block(){ // 这里面做规则 if(location.pathname != '/s') return; //暂时只支持搜索页面好吧 var a=fv('content_left');//要做大量的容错,因此会有相当多的判断 if(!a) return; a=a.childNodes; for(var i=a.length-1;i>=0;i--){ if(!a[i]) continue; if(a[i].nodeName != 'DIV') continue; var s=a[i].innerText; s=s.substr(s.length-2); if(s=='广告') removed(a[i]); else{ var sp=a[i].getElementsByTagName('span'); for(var i2=0;i2<sp.length;i2++){ if(sp[i2].innerText.includes('广告')) removed(a[i]); } } } } function removed(d){ // 这里面可以做例外 try{ pl('已屏蔽广告\n======\n'+d.innerText); if(d.innerText.includes('baike.')) return; //百科不知道为啥被屏蔽了 d.remove(); }catch(e){} } var countdown=100; function protector10sec(){ block(); pl('protecting'); //if(countdown-->0) //取消倒计时,持续护眼。谷歌浏览器不用担心,虽然页面前台1秒10次,但后台时自动降低为1秒1次 setTimeout(protector10sec,100); } //----- my ezjs lib function fv(id){return document.getElementById(id);} function ft(tag){return document.getElementsByTagName(tag);} function fc(cname){return document.getElementsByClassName(cname);} function ct(tag){return document.createElement(tag);} function msgbox(msg){alert(msg);} function inputbox(title,defalt){return prompt(title,defalt);} function pl(s){console.log(s);}