优化谷歌Adsense广告加载慢的问题
加入Adsense广告后,站点整体加载都变慢了,数据显示的慢,图片显示的更慢甚至加载失败,如何解决?今天体验盒子教你两个方法彻底解决Adsense广告加载慢的问题。
优化Adsense广告代码减少请求
先看一个Adsense生成的默认代码
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-id"
data-ad-slot="id"
data-ad-format="auto"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
我们来分解一下,首先通过async
异步请求加载adsbygoogle.js
核心文件,待加载完成后再push到ins
内,显示广告内容。
如何优化这段代码?通过我们的做法是直接复制生成的这段代码,放在相应位置就结束了。但如果我们一个页面有多个广告位,那就会出现多次引用请求adsbygoogle.js
文件,这样就会造成网络延迟。那么如果一个页面多个广告是否需要多次引用呢?
Q:如果我的网页上有多个广告单元,我是否要为每个广告单元添加 <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
?
A:不,不需要,adsbygoogle.js
可以一次性加载。
上面是Google官方给出的QA,不需要多次引用加载
好的,那么优化方法确定了,在head内一次加载adsbygoogle.js就行,不需要多次加载。也可以用JS监听加载
12345678 | window.onload = function() { setTimeout(function() { let script = document.createElement(“script”); script.setAttribute(“async”, “”); script.src = “//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”; document.body.appendChild(script); }, 2e3);} |
懒加载优化Adsense广告代码
懒加载一般我们是应用在图片场景,意思是只有在某些特定内容出现在可视区域中时,才开始加载的一种技术,如下所示:
如何用在Adsense广告代码上呢?一个WG友人针对此问题写了一个小插件,分为JS版和JQuery版本,在这里。下载对应的版本,进行初始化JS:
12345 | // 原生JSvar instance = new adsenseLoader( ‘.adsense’ ); // jQuery$( ‘.adsense’ ).adsenseLoader(); |
html,需要修改,提取出你的ins代码相应部分
1234 | <div class=”adsense”> <ins data-ad-client=”ca-pub-id” data-ad-slot=”id”></ins> <p class=”adsense__loading”><span>Loading……</span></p></div> |
css,这里建议你根据自己的布局进行调整
123456789101112131415 | .adsense{ display: block;}.adsense:before { display: none !important; }.adsense ins { width: 100%; height: 100%; display: block; } @media screen and ( max-width: 1024px ) { .adsense { width: 728px; height: 90px; } .adsense:before { content: ‘1024’; }} @media screen and ( max-width: 800px ) { .adsense { width: 468px; height: 60px; } .adsense:before { content: ‘800’; }} |
完成后的效果是这样的
联系站长
友情链接
其他入口
QQ与微信加好友
粤ICP备17018681号 站点地图 www.iamdu.com 版权所有 服务商提供:阿里云 Designed by :DU
本站部分资源内容来源于网络,若侵犯您的权益,请联系删除!