威言威语
我愿像茶,苦涩留心,清香予人。
威言威语
当前位置: 首页 > 设计 > 正文

加载多个广告不影响网页打开速度

做一些联盟广告时,由于联盟广告的加载慢,整体页面的显示速度也会变慢,如果按照下面的方法加载广告就可以有效地解决这个问题。
加载多个广告不影响网页打开速度

今天给博客做了点修改,然后发现加载网页真的快了不少,特别是在宿舍网速很不给力的情况下。由于放了百度广告,打开文章页加载到标题就会停顿一下加载广告,网速卡的话要等好一会儿,虽说广告没什么点击率,但是总比没有强,是吧。

那么如何将广告对网页加载的影响降到最小是我们所要考虑的,王晔童鞋的这篇文章《避免谷歌广告影响页面加载速度》就很好的解决了这个问题,此人隐藏甚深,平时一般不抛头露面,好东西都藏着,大家一般很难注意到,所以我还是要推荐一下下。

因为目前浏览器总是阻塞式(blocking)的读取网页引用的外部JavaScript,所以雅虎网页优化14条准则中也提到把外部引用的脚本放在页面的底部,差不多是</body>之前。这样网页基本上能最快渲染完毕,然后再加载这些外部脚本。

他的方法是这样的:


<script type="text/javascript">
function speed_ads() {
	var ad = document.getElementById('adsense'),
		loader = document.getElementById('adsense-loader');
	if (ad && loader) {
		ad.appendChild(loader);
		loader.style.display='block';
		ad.style.display='block';
		ad.style.height='60px';
	}
}
window.onload=function() {speed_ads();}
</script>

<html>
 <head>
 <!--上述脚本位置-->
 </head>
 <body>
   <!--指定的广告显示位置-->
   <div id="adsense"></div>
   <!--其他内容位置-->
   <p></p>
   <p></p>
   <!--广告代码位置-->
   <div style="display:none">
     <div id="adsense-loader" style="display:block">
       <script type="text/javascript">
       // 谷歌or百度广告代码
       </script>
     </div>
   </div>
 </body>
</html>

王晔同学只给了网页上面只有一个广告时候的解决方法,如果有几个怎么办?

我们可以用下面的脚本替换原来的脚本,当然要注意一一对应。


<script type="text/javascript">
function speed_ads(loader, ad) {
var ad = document.getElementById(ad),
loader = document.getElementById(loader);
if (ad && loader) {
ad.appendChild(loader);
loader.style.display='block';
ad.style.display='block';
}
}
window.onload=function() {
speed_ads('adsense-loader0', 'adsense0');
speed_ads('adsense-loader1', 'adsense1');
speed_ads('adsense-loader2', 'adsense2');
}
</script>

这样的话,页面加载就快了很多了。

您可能还会对这些文章感兴趣!

加载多个广告不影响网页打开速度:目前有 44 条评论

  1. 阚阚_Jun
    22楼
    阚阚_Jun:Google Chrome 14.0.835.186 Windows XP

    太晚了.明天研究一下.

    2011-10-15 23:06 回复
  2. bestchao
    21楼
    bestchao:Google Chrome 13.0.782.215 Windows XP

    经过测试发现在google chrome浏览器下此方法首页打开网页无法显示出来google adsense,只有在本页刷新后才会正常显示出来,不知有没有发现这个问题。

    2011-08-23 17:00 回复
    • William
      WilliamGoogle Chrome 13.0.782.112 Windows XP

      @bestchao木有啊,不管是百度的还是google的都能正常显示,可能是你自己没有添加正确。

      2011-08-23 17:05 回复
      • bestchao
        bestchao:Google Chrome 13.0.782.112 Windows 7

        @William没错的呀,www.bestchao.com 我的网站你帮忙检查下,我替换成百度的广告就可以显示正常。问题出在哪里了?

        2011-08-23 20:55 回复

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

gravatar

question razz sad smile redface biggrin eek shock confused cool lol mad rolleyes wink cry