您可能知道 Facebook Like 按钮的加载速度非常慢。
我试图弄清楚如何检测按钮何时完成加载并添加到网站。
原因是我显示加载动画,然后隐藏它并显示按钮,但我想在完成加载后显示按钮。
这可以做到吗?
提前谢谢大家!
您可能知道 Facebook Like 按钮的加载速度非常慢。
我试图弄清楚如何检测按钮何时完成加载并添加到网站。
原因是我显示加载动画,然后隐藏它并显示按钮,但我想在完成加载后显示按钮。
这可以做到吗?
提前谢谢大家!
可以订阅xfbml.render 事件以在渲染完成时得到通知,该事件在每个页面解析中只触发一次(不仅适用于 xfbml,也适用于新的 html5 技巧)。如果xfbml : true
.
window.fbAsyncInit = function() {
FB.init({
...
xfbml : true
});
FB.Event.subscribe('xfbml.render', function(response) {
alert('OMG... All Facebook sociaal plugins on page rendereed.... finally!');
});
};
// And load the SDK Asynchronously here
我很确定 facebook Like 按钮包含在 iFrame 中。如果是,您可以找到一些东西来引用该 iFrame 并使用 ->
$('iframe[class/id/name=whatever]').load(function(){
//This element is loaded
});
编辑
根据您的具体需求,我们可以挂钩到我评论中提到的任何属性,我只是选择frameborder="0"
挂钩。
$('iframe[frameborder=0]').load(function(){
alert("loaded.");
});
如果您要动态添加 Facebook 小部件并因此手动调用FB.XFBML.parse,那么您可以简单地指定一个在渲染完成时调用的回调函数。