Javascript ajax调用后Facebook SDK类事件不起作用

Javascript ajax调用后Facebook SDK类事件不起作用,javascript,ajax,facebook,sdk,facebook-like,Javascript,Ajax,Facebook,Sdk,Facebook Like,有人单击“喜欢”按钮后,我正在尝试执行FB.Event.subscribe: window.fbAsyncInit = function () { FB.Event.subscribe('edge.create', function (href, widget) { alert('I just clicked like button'); }); }; 如果我在分页时不使用ajax单击它,它会工作,但例如,如果单击第2页,a

有人单击“喜欢”按钮后,我正在尝试执行FB.Event.subscribe:

   window.fbAsyncInit = function () {
        FB.Event.subscribe('edge.create', function (href, widget) {
            alert('I just clicked like button');
        });
    };
如果我在分页时不使用ajax单击它,它会工作,但例如,如果单击第2页,ajax会重新加载所有链接(预期)并再次呈现“喜欢”和“共享”按钮,但是如果我单击“喜欢”,FB.Event.subscribe事件将不再工作

我正在使用

$( document ).ajaxComplete(function() {
    try{
        FB.XFBML.parse(); 
    }catch(ex){}
});
在Ajax调用后呈现按钮

编辑:我还将PHP与Yii一起使用

我不能100%确定Ajax调用的确切位置,但Ajax正在重新加载的部分是:

<section class="frame-content">
        <?php
        $this->widget('zii.widgets.CListView', array(
            'dataProvider' => $dataProvider,
            'itemView' => '_view',
        ));
        ?>
    </section>


_视图是每次有人从分页中单击任何页面时ajax重新加载的类。ajaxComplete也在_view类中。

为什么在有人单击“喜欢”按钮后会这样做?用例是什么?你是在以某种方式激励喜欢的人吗?不管怎样,ajax代码都很重要,尤其是ajax代码的回调。原因是系统有自己的like按钮,所以我希望facebook上的like按钮也能依赖于系统中的like。我不明白为什么它会在ajax调用后忽略FB.Event.subscribe…你为什么要使用ajaxComplete?这很奇怪。再次展示您的ajax代码。顺便说一句,我建议使用fetchapi,而不是jquery。没有人再使用jquery;)我试图找到Ajax代码,它在某个地方被API调用。另外,我使用ajaxComplete的原因是,在一个ajax调用之后,所有类似facebook的图标都会消失,然后我必须重新渲染它们,最好的方法是等待所有ajax完成,然后在ajaxComplete上执行FB.XFBML.parse(),以便在加载完所有内容后进行渲染。