Facebook页面iframe选项卡 - 表单没有出现

时间:2011-10-12 14:11:32

标签: html facebook iframe facebook-page

我在Facebook页面上有一个表单。在这里看到:http://on.fb.me/ocsqMR

它是一个iframe选项卡,但底部的表单不呈现。使用IE8或9时,表单不会出现。使用chrome,firefox或safari时,表单会出现。使用chrome我可以在检查元素时看到它,但它在那里但不可见。

http://imgcoop.com/ip-images/1318426054.png

想法?

1 个答案:

答案 0 :(得分:0)

查看页面的源代码,您需要进行一些更改和添加。

确保为页面声明DOCTYPE。 http://www.w3.org/QA/2002/04/valid-dtd-list.html

接下来,从body标签中删除onLoad属性:

<Body onLoad="FB.Canvas.setSize({width: 515, height: 1350})"><Div id="fb-root"></div>`

此外,您还需要更新此代码: 确保您使用https://developers.facebook.com/apps的应用ID作为您的应用。 您还需要确保OAuth属性在您的通话中。

<Script src="http://connect.facebook.net/en_US/all.js#xfbml=1″></script>
<Script type="text/javascript">
FB.init({
appId: FB_APP_ID,Status: true,Cookie: true,Xfbml: true
});
window.fbAsyncInit = function().{
fb.canvas.setautoresize();
}
</Script>

以下是它应该如何显示的示例:

<script type="text/javascript">
  window.fbAsyncInit = function() {
    FB.init({appId: 'PUT THE APP ID FROM https://developers.facebook.com/apps HERE',
 status: true, cookie: true,
             xfbml: true, oauth: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
</script>
<script type="text/javascript">
        window.fbAsyncInit = function() {
        FB.Canvas.setAutoResize();
}
</script>