【Javascript】判断网页广告是否被浏览器拦截屏蔽
本来现在投广告赚钱也不像前几年好做,现在还大部分浏览器都拦截了广告,很多浏览器还是默认拦截广告,做站长不是一般辛苦啊!目前中小站长大部分收入还是靠广告,广告被拦截,收入自然会大大减少。
目前大部分浏览器的广告拦截规则都是广告黑名单+一些广告字眼匹配,比如百度联盟、搜狗联盟、Google联盟这些就算在广告黑名单里的,一般广告过滤都会过滤掉这些广告联盟代码。剩下的就是广告字眼匹配,比如js地址包含ads.php、ad.js甚至是gg.js都可能会被过滤,360浏览器甚至会把包含ad.gif、960x90.jpg带有广告字眼的图片地址都会屏蔽掉。如果我们自己投放自定义的广告,一定要尽量避免这些广告字眼。
面对广告被拦截,让浏览器把你的网站加入白名单,不可能!让浏览器取消广告拦截功能更不实际。我们只能是尽量减少损失了,下面火端网络写了个JS判断网页广告是否被浏览器拦截过滤的代码,经过使用多款浏览器测试,基本上都能准确判断。这样我们可以通过判断,然后提示用户关闭广告拦截功能,或者用自定义广告替换原来的广告,再或者来个狠点的直接让用户无法访问(不建议这样做)。
目前大部分浏览器的广告拦截规则都是广告黑名单+一些广告字眼匹配,比如百度联盟、搜狗联盟、Google联盟这些就算在广告黑名单里的,一般广告过滤都会过滤掉这些广告联盟代码。剩下的就是广告字眼匹配,比如js地址包含ads.php、ad.js甚至是gg.js都可能会被过滤,360浏览器甚至会把包含ad.gif、960x90.jpg带有广告字眼的图片地址都会屏蔽掉。如果我们自己投放自定义的广告,一定要尽量避免这些广告字眼。
面对广告被拦截,让浏览器把你的网站加入白名单,不可能!让浏览器取消广告拦截功能更不实际。我们只能是尽量减少损失了,下面火端网络写了个JS判断网页广告是否被浏览器拦截过滤的代码,经过使用多款浏览器测试,基本上都能准确判断。这样我们可以通过判断,然后提示用户关闭广告拦截功能,或者用自定义广告替换原来的广告,再或者来个狠点的直接让用户无法访问(不建议这样做)。
以上是百度得到的结果,说的很对,并且通用Javascript判断网页广告是否被浏览器拦截屏蔽的代码如下:
- <script src="http://52hl.wang/templates/default/adview_pic_cpc_cpm_cpa_guanggao_gg_ads_300x250.js" type="text/javascript"></script>
- <script type="text/javascript">
- if (typeof(killads)=='undefined'){alert('广告被过滤');}
- </script>
以上的alert('广告被过滤'); 可以换成你想要实现的结果,比如跳转到另一个界面或者更改某布局的css样式等。
需要注意的是,如果用的其他联盟的广告,而且这家广告也可以被浏览器屏蔽,那么引用的那个js链接就不适用了,需要自己更改js链接的文件名,并且要把js文件里的代码添加上这家广告联盟的代码,这样就可以模仿这家广告联盟,而且也能在其中添加标志变量,之后的步骤就和以上一样了。
另一种百度的方法不太管用,不过也发出来吧。就是在广告代码的父布局上添加js,其代码如下:
- $(function(){
- setTimeout(function(){
- if ($('.view_box').height() == 0){
- alert('广告被过滤');
- $(".clickBrowse").removeAttr("onclick");
- }
- },3000);
- });
至于怎么判断,思路是这个思路,但还是要靠自己的聪明才智,嘿嘿~