首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在整个页面加载后加载Google广告

在整个页面加载后加载Google广告
EN

Stack Overflow用户
提问于 2014-09-17 04:02:23
回答 9查看 18.8K关注 0票数 9

如果没有Google Ads,我的HTTPS网页加载时间约为500ms。使用谷歌广告,同样的网页需要2-5秒才能加载。我有两个横幅广告(一个在顶部,一个在底部)。是的,它在广告之前呈现整个页面,但我仍然认为在等待广告结束时让浏览器旋转是很笨拙的。

Javascript有没有办法在广告之前完成页面加载,然后在后台加载广告?基本上,欺骗它让它认为整个页面已经加载了?

当前代码:

代码语言:javascript
运行
复制
(adsbygoogle = window.adsbygoogle || []).push({});

查看我的站点的瀑布,它看起来不像是adsbygoogle.js导致的负载指示器。相反,它是实际的广告内容本身。例如,这个对象(横幅广告)直到1.8秒才开始加载(在我的整个页面加载之后很长一段时间):tpc.googlesyndication.com/simgad/AdID

谢谢!

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2014-09-17 04:56:03

尝试

本文

..。

诀窍是将广告初始化和加载逻辑放在window的

事件:

代码语言:javascript
运行
复制
window.onload = function(){
       ...
   };
票数 14
EN

Stack Overflow用户

发布于 2016-04-20 03:25:48

这是我的终极Vanilla JS解决方案:

代码语言:javascript
运行
复制
(adsbygoogle = window.adsbygoogle || []).onload = function () {
        [].forEach.call(document.getElementsByClassName('adsbygoogle'), function () {
            adsbygoogle.push({})
        })
    }
票数 12
EN

Stack Overflow用户

发布于 2019-01-28 10:13:42

一个Vanilla解决方案是保留所有广告代码不变,除了删除script标记,然后添加到javascript中

代码语言:javascript
运行
复制
function loadGoogleAds() {
    var scriptTag = document.createElement('script');
    scriptTag.setAttribute('src', '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js');
    scriptTag.setAttribute('type', 'text/javascript');
    scriptTag.setAttribute('async', 'async');
    document.body.appendChild(scriptTag);
}
window.addEventListener("load", loadGoogleAds);

免责声明:与这个问题的其他答案一样,它是

假设

谷歌并不反对提高页面性能的方法

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25877461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档