使用FB.XFBML.parse重新呈现Facebook插件

使用FB.XFBML.parse重新呈现Facebook插件,facebook,facebook-like,facebook-javascript-sdk,xfbml,Facebook,Facebook Like,Facebook Javascript Sdk,Xfbml,有没有一种方法可以使用FB.XFBML.parse,而不必再次呈现导致其“闪烁”(消失或重新出现)的Facebook插件 将使用类似Facebook的按钮或Facebook推荐栏 实例: 滑动以查看右下角的闪烁 $.address.state(ajax_object.path).crawlable(true).value(whereiam); $(".fb-recommendations-bar").data("href",whereiamurl); //$(".fb-like").data("

有没有一种方法可以使用FB.XFBML.parse,而不必再次呈现导致其“闪烁”(消失或重新出现)的Facebook插件

将使用类似Facebook的按钮或Facebook推荐栏

实例:

滑动以查看右下角的闪烁

$.address.state(ajax_object.path).crawlable(true).value(whereiam);
$(".fb-recommendations-bar").data("href",whereiamurl);
//$(".fb-like").data("href",whereiamurl);
fburl = $(".fb-recommendations-bar").data("href");
//fburl = $(".fb-like").data("href");
console.log(fburl);
FB.XFBML.parse();

非常感谢您的帮助。

您可以通过将父DOM元素传递到
FB.xfml.parse
来限制重新解析的范围,当需要“页面更改”时,在facebook插件div的顶部添加一个不透明层。将其设置为完全不透明。调用FB.XFBML.parse()并给它一些时间重新渲染。将图层动画设置为非不透明,然后从facebook插件div顶部移除不透明图层(或者在下次需要进行“页面更改”时将其保留在那里,而无需实际重新加载页面)


这项技术将给你一个优雅的消失/再现插件,而不是一个刺耳的“闪烁”.

在幻灯片更改事件中缓存上一张幻灯片的类似Facebook的内容+当前幻灯片+下一张幻灯片。这样,当您转到下一张或上一张幻灯片时,其类似Facebook的内容应该已经准备好/加载,用户不应该看到闪烁。除非他/她快速观看幻灯片。

我最近有过这样的经历

我通过将XFMBL包装在一个变量中解决了这个问题…不知道为什么,但没有它,它似乎会闪烁…这是一种完全可以阻止闪烁的方法,但对我有效

      if(call == 0){
          FB.XFBML.parse();
          call = 1;
  }

DMCS提供了似乎只有一半正确的答案,但它非常难看。你不知道每个人的web浏览器渲染这些东西需要多长时间。据说是渲染的回调也不起作用。而且闪烁在firefox中看不到,但只在google chrome中看到。

是的,但它仍然渲染Facebook插件n再次。你要求的没有意义-你怎么可能在不重新加载插件的情况下再次加载插件(新数据)?问题是,是否有办法在不重新呈现插件的情况下重新加载其数据,从而导致插件“闪烁”(因为它消失并重新出现)@gab不,你正在用另一个插件实例替换插件实例,这需要时间。Facebook不会针对此类用例进行优化。-此问题/答案可能与你有关。。。