iFrame高度代码不起作用

时间:2011-10-26 19:56:50

标签: canvas facebook-iframe facebook-canvas

我正在尝试将iFrame页面高度调整为页面内容。在应用设置中,我设置了以下内容:

画布宽度:固定(760像素) 画布高度:可设置(默认值:800px) 社交发现:已启用

我这是我的index.html文件的代码:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0              
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html 
xmlns="http://www.w3.org/1999/xhtml"><head><title></title><meta http-equiv="refresh" 
content="0;url= Merchandise.html" />
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.Canvas.setSize();}
function sizeChangeCallback() {
FB.Canvas.setSize();}
</script></head><body><div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({ 
appId : 'XXXXXXXXX',
status : true, 
cookie : true, 
xfbml : true 
});
</script></body></html>

不确定这里有什么不对。任何帮助都会很棒。我也尝试过添加建议无用的css块。

删除元刷新标记,编辑代码,现在看起来像:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0     
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html 
xmlns="http://www.w3.org/1999/xhtml"><head><title></title><content="0;url=   
Merchandise.html" />
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script type='text/javascript'>
window.onload=function() {
  FB.Canvas.setSize({width:760,height:document.body.offsetHeight});
}
</script></head><body>
</body></html>

仍然没有运气

1 个答案:

答案 0 :(得分:0)

除非您使用javascript SDK执行其他操作,否则您实际上不需要调用FB.init()。尝试删除您当前拥有的所有<script>块,并将此代码放入<head>

<script src="http://connect.facebook.net/en_US/all.js"></script>
<script type='text/javascript'>
window.onload=function() {
  FB.Canvas.setSize({width:760,height:document.body.offsetHeight});
}
</script>

但是,标题中的元刷新标记是什么?

对于页面选项卡,修改对setSize()的调用,如下所示:

FB.Canvas.setSize({width:520,height:document.body.offsetHeight+20});

另外请确保您的页面中没有任何元素比760px / 520px宽,否则会出现水平滚动条,这通常会使垂直滚动条也出现。