我在Facebook页面上有一个表单。在这里看到:http://on.fb.me/ocsqMR
它是一个iframe选项卡,但底部的表单不呈现。使用IE8或9时,表单不会出现。使用chrome,firefox或safari时,表单会出现。使用chrome我可以在检查元素时看到它,但它在那里但不可见。
想法?
答案 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>