【发布时间】:2011-11-07 22:38:35
【问题描述】:
这不是滚动条问题。事情是这样的:
-
您加载 Facebook 画布应用并执行 FB.Canvas.setSize({height:900});(有效)
您移动到应用程序的另一个部分(一些链接),然后执行 FB.Canvas.setSize({height:1300});
第二步不起作用。应用 iframe 保持在 900 像素高度。
我需要的是在设置后动态更改画布高度。根据 Facebook 文档,这应该可行。它们没有指定您是否可以在设置画布高度后更改它。
我在页面选项卡上尝试了相同的方法并且它有效,我可以使用 setSize() 正确调整选项卡的高度,但是,画布页面的行为似乎不同 (?)。
这是我正在使用的代码,在打开 body 标签之后:
<div id="fb-root"></div>
<script type="text/javascript">
<!--
window.fbAsyncInit = function() {
FB.init({appId: "XXXXXXXXXXXXXXXXXXXXX",
status: true,
cookie: true,
xfbml: 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);
}());
window.fbAsyncInit = function() {
FB.Canvas.setSize({height:1300});
}
//-->
</script>
设计师使用不同的高度制作了一个 Canvas 应用程序,到目前为止,实施起来很痛苦。
【问题讨论】: