百度联盟广告异步加载的方法

  • Simon 发布于 2016-08-31
  • 栏目: php
  • 1229人围观
  • 0评论

百度联盟广告很多个人站长都在用 ,虽说不指望靠它挣大钱 ,但是补贴下域名服务器费用也是极好的。

simon最近一直在尝试优化页面载入速度,好提升用户体验,但后来发现只要加载了百度联盟的广告,页面加载时间总是很长,那就想办法让广告异步加载吧。

原代码
<div class="sidebar-block" id="aside_1">
    <script type="text/javascript">var cpro_id = "u1234567";</script>
    <script type="text/javascript" src="http://cpro.baidustatic.com/cpro/ui/c.js"></script>
</div>
<div class="sidebar-block" id="aside_2">
    <script type="text/javascript">var cpro_id = "u2345678";</script>
    <script type="text/javascript" src="http://cpro.baidustatic.com/cpro/ui/c.js"></script>
</div>

我们在页面加载完成后 , 使用javascript的setTimeout方法设置1秒延迟 ,然后利用jquery的$.getScript方法来载入百度联盟广告的js

修改后
<div class="sidebar-block" id="aside_1"></div>
<div class="sidebar-block" id="aside_2"></div>
$(function(){
    setTimeout(function(){
        $.getScript("http://cbjs.baidu.com/js/m.js", function() {
            BAIDU_CLB_fillSlotAsync("u1234567","aside_1");
            BAIDU_CLB_fillSlotAsync("u2345678","aside_2");
        });
    },1000)
})


注: BAIDU_CLB_fillSlotAsync 本身就是异步加载 ,但是为了效果 ,simon特意使用了setTimeout方法 , 你可以根据自己的需求来决定需不需要使用setTimeout

啧啧,现在不会被百度联盟广告影响速度了,页面那是刷刷的。


标签: javascript

评论