javascript - 如何使用 Javascript 插入 Facebook 登录按钮?

标签 javascript facebook facebook-login

我想使用 Javascript 将 Facebook 登录按钮添加到我的 HTML 页面:

var button = document.createElement("fb:login-button");
button.size = "xlarge";
parent.appendChild(button);

出现该按钮,并显示非 Facebook 特定的属性,例如 idlang即可添加成功。但是,添加 size 属性没有任何效果。

此外,如果我尝试使用 button.createAttribute() 添加任何属性,我明白

Uncaught TypeError: Object #<HTMLUnknownElement> has no method 'createAttribute'

为什么 Facebook 的登录按钮不被识别为有效的 HTML 元素,即使它出现在页面上?使用 Javascript 插入 Facebook 登录按钮并更改其大小的正确方法是什么?

最佳答案

您需要 Facebook JavaScript SDK动态呈现这些社交插件。一旦您初始化了 SDK,您就可以随心所欲地操作您的页面,然后您所要做的就是调用 FB.XFBML.parse() 函数,并且标签将正确显示。

您甚至可以在特定元素上调用该函数以进行更多控制:

FB.XFBML.parse( document.getElementById( 'some-element' ) );
// or with jQuery
FB.XFBML.parse( $( "#some-element" )[0] )

您还应该尝试将标记作为字符串手动附加:

element.innerHTML += '<fb:login-button id="some-element" size="xlarge"/>'; 
FB.XFBML.parse( document.getElementById( 'some-element' ) );
<小时/>

以下是 relevant documentation 的概述:

This function parses and renders XFBML markup in a document on the fly. This could be used if you send XFBML from your server via ajax and want to render it client side. XFBML enables you to incorporate FBML into your websites and IFrame applications.

You can parse the following XFBML tags with this method:

  • fb:activity
  • fb:comments
  • fb:friendpile
  • fb:like
  • fb:like-box
  • fb:login-button <-------------- WOOHOO!
  • fb:name
  • fb:profile-pic
  • fb:recommendations

关于javascript - 如何使用 Javascript 插入 Facebook 登录按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536559/

相关文章:

asp.net - 关闭 ASP.NET 和 AJAX 应用程序的浏览器窗口

ios - 在 iOS 8 中的 Facebook 上共享时 SLComposeViewController 自动关闭

android - 如何在 facebook 上更新游戏分数?

facebook - 同一页面上的多个 Facebook opengraph 对象

android - 获取 facebook 电子邮件 parse.com

javascript - 在 Firebase 中处理关联帐户

javascript - FB.ui({ 页面选项卡应用程序中的方法 : "oauth" }) vs FB. login()

javascript - 是否有等同于 JavaScript 函数 toLocaleString() 的 PHP 函数

javascript - 在 momentjs 中将分钟添加到日期时间

javascript - 制作一个 Angular 2 按钮组件,将用户带到网页顶部