Código:
El código lo que hace es mediante un botón cargar contenido en un div de manera dinámica. Mientras se carga el contenido muestra un gif de precarga.$.fn.imagesLoaded = function () {
$imgs = this.find('img[src!=""]');
if (!$imgs.length) {return $.Deferred.resolve().promise();}
var dfds = [];
$imgs.each(function(){
var dfd = $.Deferred();
dfds.push(dfd);
var img = new Image();
img.onload = function(){dfd.resolve();}
img.src = this.src;
});
return $.when.apply($,dfds);
}
var disc = function(div,of){
$(div).hide();
$('#loading').show();
var ajax = $.ajax({url : of, type : "GET", cache: false});
ajax
.done(function(response){
Commons.sorDone(div, response);
FB.XFBML.parse(document.getElementById('.fb-comments'));
twttr.widgets.load();
})
.fail(function(){
Commons.sorFail(div);
});
}
Commons = {
sorDone : function (div, response) {
$(div).html(response).imagesLoaded().then(function(){
$('#loading').hide();
$(div).show();
});
},
}
Pues bien, en ese contenido hay botones sociales de facebook y twitter y un box de comentarios también de facebook que para poder mostrarse han de ser parseados con FB.XFBML.parse
Hasta ahí todo bien, pero el problema es que a veces aparecen los comentarios de facebook y otras veces aparece el hueco vacío y los comentarios no se ven.

No sé donde puede estar el error, ¿alguien me echa una mano?


