优化谷歌联盟广告JS加载缓慢问题,提高网站页面的加载速度

早上跟彧繎博主聊天,看到他博客有一篇优化谷歌联盟js优化的文章,因为谷歌在国内尴尬的局面,在网页加载js的时候可能会比较拖拉,然后他又给我了一篇关于优化谷歌联盟js的文章,然后看了下自己网站的加载速度,果然谷歌js加载的速度真的很慢,加速最慢的已经达到了6.19s,另外两个十秒+应该是图片资源,可以暂时忽略。虽说我的网站打开速度不是很快,但是不能这么拖拉啊,是该整顿整顿啦,网站还有百度联盟的广告,但是速度不至于这么拖拉,而且百度的也该下架了,基本没有什么收益,广告太局限了,这一点来说真的不如谷歌,如图,看看吧,就是着速度,嗖嗖地。。。

优化谷歌联盟广告JS加载缓慢问题,提高网站页面的加载速度

解决办法:

首先我们将谷歌 Google Adsense 获取到的单元广告代码(非自动广告),复制一下,代码如下:

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8840255125180942"
     crossorigin="anonymous"></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>

代码获取到了,我们可以看见代码其实可以分成两段,其一是js代码,其次是<ins>代码,实际Google代码现在的思路很简单,关于js优化有两种方案,一种是设置setTimeout()函数,setTimeout() 方法用于在指定的毫秒数后调用函数,所以我们可以优化下就js代码:

<script>
window.onload = function() {
    setTimeout(function() {
	let script = document.createElement("script");
	script.setAttribute("async", "");
	script.src = "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-发布商数字ID";
	document.body.appendChild(script);
    }, 2000);
};
</script>

代码含义就是广告时间延迟异步加载,这样可以加快加载速度!延迟时间(2000)可以自定义!

另外一种是彧繎博文介绍的,就是通过 window.addEventListener 来实现谷歌广告懒加载,可直接复制使用,放在网站 head ,修改实例如下:(推荐使用)

<script type="text/javascript">
    function downloadJSAtOnload() {
        var element = document.createElement("script");
        element.setAttribute("async", "");
        element.src = "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-发布商数字ID";
        element.setAttribute("crossorigin", "anonymous");
        document.body.appendChild(element);
    }
    if (window.addEventListener)
        window.addEventListener("load", downloadJSAtOnload, false);
    else if (window.attachEvent)
        window.attachEvent("onload", downloadJSAtOnload);
    else window.onload = downloadJSAtOnload;
</script>

这样符合Google官方不能不能改变代码的要求,建议把js放在我们页面的head之内,即使多个页面都会统一调用,然后将<ins>和<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>

这样一样加载速度的确会有提升,而且我还发现一个问题,就是优化之后页面js错误由原来的10个减少成3个,这可真是意外的收获啊,其实网上的教程还是很多的,大同小异,基本都是通过异步加载实现的,好了,有问题留言反馈吧。

文章声明:以上内容(如有图片或视频亦包括在内)除非注明,否则均为网站名称原创文章,转载或复制请以超链接形式并注明出处。https://xz.itlaoli.com/blog/675.html

« 上一篇
下一篇 »

相关推荐

想搭Halo博客?MySQL和PostgreSQL怎么选?看完这篇就懂了

2025年09月02日

6824阅读

告别局域网限制,cpolar 内网穿透+宝塔面板,公网远程访问超简单

2025年08月26日

3794阅读

windows修改服务器远程桌面端口图文教程

2025年08月04日

3676阅读

为什么本地 HTML、JS、JSON 文件会出现跨域问题?

2025年07月18日

4254阅读

搭建自己的技术博客有什么意义?

2025年07月03日

4172阅读

解决Zblog文章中Emoji表情显示为问号的问题​

2025年06月30日

3910阅读

发表评论

访客 访客
评论列表 (有 9 条评论,12525人围观)
网友昵称:淇云博客
淇云博客 V 游客 Google Chrome 131.0.0.0 Windows 10 x64 板凳
2025年01月26日 来自四川 回复
阿里云这边管理很严格啊,1月25号凌晨被扫描到我网站上有谷歌广告宣传的科学上网,直接给我暂停dns解析了,叫我整改后申诉,阿里云已经对您域名做暂停解析并禁止转移处理
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2025年01月26日 来自辽宁 回复
@淇云博客 DNS换成CLoudflare。
网友昵称:淇云博客
淇云博客 V 游客 Google Chrome 131.0.0.0 Windows 10 x64 椅子
2024年12月30日 来自四川 回复
有收益损失风险 - 您需要纠正 ads.txt 文件存在的一些问题,以免严重影响您的收入。我的谷歌广告登录进去,就提示这个,我按照他的要求也设置了的,也能访问创建的路径文件,老是提示这个问题,你有遇到过吗?
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2025年01月03日 来自辽宁 回复
@淇云博客 是的,总有这个提示,一般都是域名301重定向导致,重新验证下,过段时间还是会出现,乜办法。
网友昵称:淇云博客
淇云博客 V 游客 Google Chrome 131.0.0.0 Windows 10 x64 沙发
2024年12月27日 来自四川 回复
请问一下,博主首页用的谷歌广告优化采取的是文中的那种方法呀?我看首页打开速度很快呢
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2024年12月27日 来自辽宁 回复
@淇云博客 哦对了,贵站很漂亮[Social]
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2024年12月27日 来自辽宁 回复
@淇云博客 就正常审核没有特殊方式,使用了腾讯EO,缓存时间一个月。
网友昵称:淇云博客
淇云博客 V 游客 Google Chrome 131.0.0.0 Windows 10 x64
2024年12月27日 来自四川 回复
@李洋博客 那贵站使用了那种解决谷歌广告加载缓慢的方式呢?文章里面的哪一种呀
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2024年12月30日 来自辽宁 回复
@淇云博客 文章介绍了,没有什么特殊的技术含量的。
取消
微信二维码
微信二维码
支付宝二维码