1

按照指南,我可以通过 ajax 启动 addthis,但它只能在一个地方工作,

例如,

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 页面中有另一个 addthis 按钮 - '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 页面上......我该如何解决这个问题?

4

3 回答 3

1

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

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

认为这会对您有所帮助:使用 JavaScript 渲染

于 2011-11-07T13:41:30.997 回答
0

您需要将您的initAddthis函数移动到window.onload方法,因此当页面的所有资产加载时该函数将被触发。

window.onload = function(){
    initAddthis();
}
于 2012-05-30T13:30:52.443 回答
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)
于 2013-08-28T06:51:44.617 回答