下载地址:https://github.com/jsoncode/b...
使用方法:
将文件夹拖到这里面
一个小问题:
我没有境外支付信用卡>无法向谷歌支付$5的费用>每次打开浏览器都会提示是否禁止>点取消就行了
也可以通过网上的方法,修改注册表关闭提示,这里就不再赘述
如果你有更新,需要打开第二张图的位置,重新载入才能生效
目录结构
-bd.png
-browser_action.js
-config.js
-manifest.json
manifest.json
{
"name": "屏蔽百度广告",
"manifest_version": 2,
"version": "1.0",
"description": "百度插件",
"browser_action": {
"default_icon": "bd.png"
},
"icons": {
"128":"bd.png"
},
"content_scripts": [{
"matches": ["<all_urls>"],
"js": ["config.js","browser_action.js"]
}]
}
browser_action.js
var lists = str.split('\n').filter(function(v) {
if (v) return true
});
function clear(lists) {
var local = location.href;
for (var a = 0, list; list = lists[a++];) {
var sub = list.split('$');
if (new RegExp(sub[0]).test(local)) {
var selector = sub[1];
var obj = document.querySelectorAll(selector);
for (var i = 0, item; item = obj[i++];) {
item.parentNode.removeChild(item);
}
}
}
}
clear(lists);
setInterval(function() {
clear(lists);
}, 2000);
var input = document.querySelector("input[name=wd]");
input&&input.addEventListener('change', function() {
clear(lists);
});
之所以用定时器一直调用,是因为有些网站会动态延迟的加载动态脚本类的广告,比如bd,恶心无比,自己使用的adBlock,adBlock plus都不理想。
config.js
var str = `
www.baidu.com$#content_left [style="display:block !important;visibility:visible !important"]
www.baidu.com$[tpl="right_toplist"]
www.baidu.com$[class="c-gray c-feedback"]
www.baidu.com$[data-click*="vLevel"]
`;
用法:每次只需要修改config.js中的规则就行
规则约定:需要屏蔽的网站地址$css3选择器,中间的$是分隔符,选择器选中的就是要被删除的广告
上面四个规则自己常用的,
第一个可以屏蔽大多数动态流氓广告,之所以用这么低级的方法(style=*)是因为这类广告伪装实在太逼真(和正常搜索结果没任何区别)
第二个屏蔽右侧不喜欢的推荐
第三行忘记了,
第四行是一些推广广告
从此,世界一片洁净,我不会成为第二个魏则西,在此分享给大家,
这里更新一下,每次打开浏览器,都会提示的问题。
我找到了一个管理浏览器插件代码片段的工具Tampermonkey,是一个浏览器插件。
然后就可以把我的百度插件代码添加到这个插件中使用,就不会每次都提示了。
使用方法:
1,新增脚本
2,粘贴代码
代码如下:
// ==UserScript==
// @name ad-baidu
// @namespace https://baidu.com/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://www.baidu.com/**
// @grant none
// ==/UserScript==
var selectors = `
#content_left [style*="display:block !important;visibility:visible !important"]
[tpl="right_toplist"]
[class="c-gray c-feedback"]
[data-click*="vLevel"]
`;
selectors = selectors.trim().split('\n');
var count = 0;
function showCount(cn){
if(cn>0){
count+=cn;
var content_right = document.querySelector('#content_right');
if(content_right){
content_right.style.position = 'relative';
var style = `
line-height: 42px;
text-align: center;
background: #0c0;
color: #fff;
margin-bottom:30px;
`;
var msgCount = document.querySelector('#msg-remove');
if(!msgCount){
content_right.insertAdjacentHTML('afterbegin','<div id="msg-remove" style="'+style+'"></div>');
msgCount = document.querySelector('#msg-remove');
}
msgCount.innerHTML = '已过滤:'+count+'条垃圾广告,本次过滤:'+cn+'条';
}
}
}
function clear() {
selectors.forEach(function(selector) {
var doms = document.querySelectorAll(selector);
if(doms.length){
doms = Array.from(doms);
showCount(doms.length);
doms.forEach(function(dom) {
dom.parentNode.removeChild(dom);
});
}
});
}
setInterval(function () {
clear();
},500);
然后每次打开浏览器百度搜索,就不会再有提示了;
效果:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。