2011-12-27 50 views
1

我正要将Like按钮合并到我的网站 - 这将是我第一次将Facebook fubctionality合并 - 并且希望获得关于是否使用XFBML选项或Iframe选项。看起来好像XFBML为未来提供了更多的灵活性,但是a)这种方法有什么缺点,b)HTML5兼容版本更好吗?谢谢。Like button - XFBML or Iframe

+0

我不确定,但似乎iframe的加载速度比html5版本快得多 – 2013-07-03 10:59:57

回答

1

FBML将在未来6个月内消失,请参阅https://developers.facebook.com/docs/reference/fbml/,这样就不会是一个好的长期选择。 (FBML和XFBML是不一样的。)XFBML是一种有效的方法,但是语法需要一些习惯。需要在网页上运行解析代码,这不是什么大不了的事情,但它是一些网站所有者。

HTML5是我这样做的方式,但需要在网页上运行解析代码,这不是什么大不了的事情,但它是一些网站所有者。

iFrame选项效果很好,但与其他任何方式一样,请务必查看Facebook以查看它们是否会弃用它。

+1

XFBML *不会*消失,它与FBML不一样;这是不正确的 - 请参阅mafulu的答案 – Igy 2012-05-29 19:41:55

+0

Opps,对不起,这是一个古老的答案,当时我一直坚信FBML和XFBML是完全相同的,只是两个词而已。我认为在2012年初的某个时候,我了解到了差异。我编辑了这个答案。感谢您指出我的错误。 – DMCS 2012-05-29 21:50:02

2

如果您希望它在您的网站中使用快速且非侵入性的代码使用IFrame,但SEO可能会受到影响。

如果您想添加更多功能,请使用XFBML或HTML5。但这需要使用包括JS SDK,但恕我直言,它会更好长期

2

XFBML不会消失,是不同于FBML。我也对此感到困惑,因为它们的所有社交插件示例代码仍然为您提供xfbml选项。

https://developers.facebook.com/blog/post/568/

请注意:我们的FBML的折旧不会影响XFBML(扩展 Facebook的标记语言)。 XFBML是一组XML元素,可以包含在HTML页面中的 以显示社交插件。加载页面 后,文档中找到的任何XFBML元素都将由JavaScript SDK的 进行处理,从而在您的页面上生成相应的插件 。在使用FBML的 (除了用于在我们的服务器上执行FBML的fb:serverFbml元素 除外)之后,JavaScript SDK将继续支持XFBML。

HTML5/XFBML/IFRAME?我认为这没有太大的区别。一旦facebook api被初始化,它们全都以iframe结尾。你可以看到这个,如果你用萤火虫或铬检查元素。也许不符合标准,xfbml版本可能更高性能,因为通过标记名获取一堆元素比通过classname更快。

一旦告知HTML5版本,如果您打算订阅插件的events,则需要在初始化api时添加一个频道文件。 xfbml版本在没有它的情况下工作正常(至少在撰写本文时)。