【发布时间】:2011-12-09 09:37:01
【问题描述】:
我需要扩展应用程序已用空间的宽度。下图显示有空间可以使用。
图片:http://imageshack.us/photo/my-images/834/imgbe.png/
此操作的一个示例是: http://apps.facebook.com/meucalendario/
Ps:我试过使用:FB.Canvas.setAutoGrow, FB.Canvas.setSize() 但没有成功。
谢谢。
【问题讨论】:
我需要扩展应用程序已用空间的宽度。下图显示有空间可以使用。
图片:http://imageshack.us/photo/my-images/834/imgbe.png/
此操作的一个示例是: http://apps.facebook.com/meucalendario/
Ps:我试过使用:FB.Canvas.setAutoGrow, FB.Canvas.setSize() 但没有成功。
谢谢。
【问题讨论】:
你做不到。它的最大值是 760 像素,这取决于您可以将应用程序的视口拉伸到多远。
【讨论】:
默认画布宽度为 760px,但 Facebook 最近为开发人员添加了使用 fluid 宽度的选项。这意味着您的 iframe 将具有 100% 宽度,并将根据用户的屏幕分辨率/浏览器进行扩展。
您可以阅读官方博客文章here 和一个示例(假设您已经在应用设置中设置了该选项):
<html>
<head>
<title>Fluid Width HTML Example </title>
</head>
<body style="margin:0; padding:0; border:0; background-color:#000000">
<div id="allContent" style="background-color: #0000FF; height:100%">
<div id="output" style="color: #FFFFFF;" />
</div>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">
FB.init({
appId : 'APP ID',
});
function echoSize() {
document.getElementById('output').innerHTML =
"HTML Content Width: " + window.innerWidth +
" Height: " + window.innerHeight;
console.log(window.innerWidth + ' x ' + window.innerHeight);
}
echoSize();
window.onresize = echoSize;
</script>
</body>
</html>
P.S.:您不能覆盖右侧的实时代码!
【讨论】: