我需要知道Facebook页面插件何时加载,因为有时需要花费很多时间,并且会留下空白。
我已经按照 facebook 所说嵌入了页面插件
<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/es_LA/sdk.js#xfbml=1&version=v2.4&appId=XXXXXXX";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
然后作为 facebook 的示例:
<div class="fb-page" data-href="https://www.facebook.com/facebook" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="true" data-show-posts="true"><div class="fb-xfbml-parse-ignore"><blockquote cite="https://www.facebook.com/facebook"><a href="https://www.facebook.com/facebook">Facebook</a></blockquote></div></div>
它工作正常,但我需要知道它何时加载,这样我才可以显示它。
更新
很多天后,我只是隐藏该框并在 1 分钟后显示它,但有时它仍然无法加载页面。有什么想法吗?
谢谢!
使用此代码:
window.onload = function() {
FB.Event.subscribe('xfbml.render', function(response) {
console.log('rendered.... finally!');
});
};
函数 isFbMessengerLoaded() { 返回 typeof FB !== '未定义' && typeof FB.XFBML !== '未定义' && typeof FB.XFBML.parse !== '未定义'; }