Facebook JavaScript SDK fb.canvas.setsize和SetAutogrow在IE7/8中不起作用
题
目前,我正在测试一个Facebook选项卡页面。我正在使用推荐的async init方法使用JavaScript SDK:
window.fbAsyncInit = function() {
FB.init({
appId : app_id,
status : true,
cookie : true,
oauth : true,
xfbml : true
});
FB.getLoginStatus( loginStatus );
FB.Canvas.setAutoGrow( );
FB.Canvas.setSize( {height: 1200 });
};
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
我有问题 IE7/8 在哪里 setautogrow 和 设置 没有回应。我的标签页面是 不是 调整大小到完整的内容。相反,在IE控制台中,每当我调用setAutogrow或setSize时,我都会遇到此错误:
SCRIPT438: Object doesn't support this property or method all.js, line 15 character 3916
我在Chrome/ff/IE9 PC/Mac中对此进行了测试,所有这些都可以正常工作,只有IE7/8才给我这些问题。有人知道这些是FB的JS SDK还是我做错了什么?
解决方案
<script type="text/javascript">
FB.Canvas.setSize({ width: 520, height: 1400 });
window.fbAsyncInit = function () {
FB.Canvas.setAutoResize();
}
</script>
在关闭身体标签之前先将其放置并立即将其放置。
还要确保您还在身体标签内有此标记:
<div id="fb-root"></div>
<script type="text/javascript" src="//connect.facebook.net/en_US/all.js"></script>
不隶属于 StackOverflow