我在页面上使用简单的按钮:
"
和我的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吗?
答案 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!