1.访问某博客网站时出现如下效果:

https://s1.ax1x.com/2021/12/09/o4G6DH.png

再看看人家:https://s1.ax1x.com/2021/12/09/o4GyKe.png

吃相有点难看。

2.寻找相关代码,最终在博客网页中找到如下代码,是和博客放在一个html里的:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function checker() {
if (/mobile|android/i.test(navigator.userAgent)) return;
window.comments && window.comments.setAttribute("style", "!important");
// var img = document.querySelector('img[src^="http://www.ruanyifeng.com/blog/images"]');
var img = document.querySelector('a > img[src*="wangbase.com/blogimg/asset/"]');
var isAdblocker = (typeof adblock === 'undefined');
if (
/*isAdblocker || */
(img && window.getComputedStyle(img).display === 'none') ||
(img && window.getComputedStyle(img.parentElement).display === 'none')
){
var sponsor = document.querySelector('#main-content');
var prompt = document.createElement('div');
prompt.style = 'border: 1px solid #c6c6c6;border-radius: 4px;background-color: #f5f2f0;padding: 15px; font-size: 14px;';
prompt.innerHTML = '<p>您使用了广告拦截器,导致本站内容无法显示。</p><p>请将 www.ruanyifeng.com 加入白名单,解除广告屏蔽后,刷新页面。谢谢。</p>';
sponsor.parentNode.replaceChild(prompt, sponsor);
// document.querySelector('#main-content').innerHTML = '';
}
}

3.解析这个js:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function checker() {
if (/mobile|android/i.test(navigator.userAgent)) return; //如果是移动端就不管
window.comments && window.comments.setAttribute("style", "!important");
var img = document.querySelector('a > img[src*="wangbase.com/blogimg/asset/"]');
//搞一个广告链用于钓鱼AdBlock有没有工作
var isAdblocker = (typeof adblock === 'undefined');
//判断adblock类型有没有定义,但似乎没用上
if (
/*好心的AdBlock被骗,站出来将钓鱼图片或者它的上级隐藏希望帮助用户打造更美好的世界*/
(img && window.getComputedStyle(img).display === 'none') ||
(img && window.getComputedStyle(img.parentElement).display === 'none')
){
var sponsor = document.querySelector('#main-content');
var prompt = document.createElement('div');
prompt.style = 'border: 1px solid #c6c6c6;border-radius: 4px;background-color: #f5f2f0;padding: 15px; font-size: 14px;';
prompt.innerHTML = '<p>您使用了广告拦截器,导致本站内容无法显示。</p><p>请将 www.ruanyifeng.com 加入白名单,解除广告屏蔽后,刷新页面。谢谢。</p>';
//将文章替换成恶心的提示
sponsor.parentNode.replaceChild(prompt, sponsor);

}
}