Console.log曾经异步Facebook Like按钮被加载(显示)

时间:2015-08-27 08:45:03

标签: javascript facebook asynchronous facebook-like

我在页面上使用简单的按钮:

"

和我的HTML

<div id="fb-root"></div>
<script>(function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/pl_PL/sdk.js#xfbml=1&version=v2.4";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

一切正常。按钮是异步加载的,这很酷。我想要实现的是执行特定操作,一旦加载按钮,就说<div class="fb-like" data-href="https://www.facebook.com/link_to_sample_fanpage" data-layout="button_count" data-action="like" data-show-faces="false" data-share="false"> </div>

类似于init上的回调?我必须使用一些FB API吗?

1 个答案:

答案 0 :(得分:0)

谢谢你CBroe。你的回答非常有帮助。我会接受它,但是为了添加有价值的东西,我也会在下面粘贴我的最终解决方案。

内部 window.fbAsyncInit我添加了名为social_finished_rendering的自定义事件。

FB.Event.subscribe('xfbml.render', social_finished_rendering);

然后在代码中

var social_finished_rendering = function() {
    // console log whatever
};

在加载async Like按钮后,我无法执行我的DOM操作。谢谢CBroe!