2011-11-07 100 views
1

guide,我可以启动通过ajax前页但只在一个地方工作,前页和异步加载

例如,

HTML索引页 '的index.php',

<a href="#" class="load">click to load</a> 

<div id="container"></div> 

<p>addthis at the footer,</p> 
<div class="addthis_toolbox addthis_default_style left addthis" style="border:0px solid #000; margin:20px 5px 0px 10px; width:300px;"> 
<a class="addthis_button_facebook_like" addthis:url="#" addthis:title="#" addthis:description="#" fb:like:layout="button_count" style="width:80px;"></a> 
<a class="addthis_button_tweet" addthis:url="#>" addthis:title="#" addthis:description="#" style="width:100px;"></a> 
<a class="addthis_button_google_plusone" g:plusone:size="medium" style="width:65px;"></a> 
</div> 

我在AJAX页面另一个前页按钮 - 'load.php',

<p>it should have another addthis in this ajax loaded page,</p> 

<a class="addthis_button_facebook" addthis:url="#" addthis:title="title" addthis:description="" href="http://www.addthis.com/bookmark.php?v=250&amp;username=lauthiamkok"></a> 
<a class="addthis_button_twitter" addthis:url="#" addthis:title="title" addthis:description="" href="http://www.addthis.com/bookmark.php?v=250&amp;username=lauthiamkok"></a> 
<a class="addthis_button_google_plusone" addthis:url="#" addthis:title="title" addthis:description="" href="http://www.addthis.com/bookmark.php?v=250&amp;username=lauthiamkok"></a> 

这是我的jQuery,

$(document).ready(function(){ 

      // the addthis buttons are loaded successfully here. 
        initAddThis(); 

      $('.load').click(function(){ 
       $('#container').load('load.php', function(){ 

        // the addthis buttons fail to load here. 
        initAddThis(); 

       }); 
       return false; 
      }); 

     }); 

     function initAddThis() 
     { 
      addthis.init() 
     } 

它只是发生在索引页上,但不是AJAX网页...我怎么能解决这个问题?

回答

1

您正在使用错误的示例代码:)您发布的代码用于在您将所有内容加载到ajax后初始化addThis。

您正在寻找一种方法来更新/初始化一些与addthis的链接。

认为这将有助于你出去:Rendering with JavaScript

+0

感谢曼努埃尔。我看了一下。但仍不知道如何使用它们... – laukok

0

您需要将initAddthis功能移到window.onload方法,所以当页的所有资产被加载的功能将被触发。

window.onload = function(){ 
    initAddthis(); 
} 
0

试试这个

var addthis_url = "http://s7.addthis.com/js/250/addthis_widget.js#pubid=your_id"; 
if (window.addthis) { 
    window.addthis = null; 
    window._adr = null; 
    window._atc = null; 
    window._atd = null; 
    window._ate = null; 
    window._atr = null; 
    window._atw = null 
} 
$.getScript(addthis_url)