FB iframe 画布高度

Posted

技术标签:

【中文标题】FB iframe 画布高度【英文标题】:FB iframe canvas height 【发布时间】:2012-07-04 20:55:46 【问题描述】:

我的宽度和画布高度有问题; 我使用了以下代码:

<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>

<script type="text/javascript">

    window.fbAsyncInit = function()
    
        FB.init(appId: 'my_app_id', status: true, cookie: true, xfbml: true);
        FB.Canvas.setAutoGrow();
    ;

</script>

在标签&lt;/body&gt;之前插入

而且效果很好。

但是,如果我在应用程序内部导航,则不会调整高度。如果需要,它确实会增加,但在需要时它不会减少;所以在某些情况下所有页面都保持很高。

只能从应用设置页面选择宽度页面选项卡(narrow:520 或 widr:810);选项卡高度没有可用的设置。

希望有人能帮助我,非常感谢。

【问题讨论】:

【参考方案1】:

毕竟,真正的问题是来自 facebook 的 http*s*

您可以在此处关注问题:

https://developers.facebook.com/live_status

如果你知道的话,你也可以设置大小。

FB.Canvas.setSize( 宽度: YOUR_WIDTH, 高度: YOUR_HEIGHT );

问候

【讨论】:

我也无法让setSize 工作...我认为这是调整标签大小的一般问题,而不是特定方法... 把它们放在一起。 FB.Canvas.setSize( 宽度: YOUR_WIDTH, 高度: YOUR_HEIGHT ); FB.Canvas.setAutoGrow(50); 不 - 不起作用。无论如何 - Facebook 已经确认了这个错误,并计划尽快修复。 我注意到,正如@CBroe 所说,你想降低高度,而不是放大。 Facebook 文档:“注意:当自动确定画布高度时,它只能增加,不能减少。如果可能,请将显式尺寸作为对象的属性传递。”我认为它不能小于 800px 在这种情况下,我对您的“解决方案”是将您的应用与 facebook 的默认高度垂直对齐【参考方案2】:

是的 - 目前 Facebook 上存在许多处理身高问题的错误。

这只是其中之一 - https://developers.facebook.com/bugs/394423653950625

修复应该很快就会出来。同时-知道您并不孤单:P我们也正在遭受这种痛苦……嗯……客户正在遭受这种痛苦,我们正在遭受客户的投诉:P

【讨论】:

【参考方案3】:

但是,如果我在应用程序内部导航,则不会调整高度。如果需要,它确实会增加,但在需要时它不会减少;所以在某些情况下所有页面都保持很高。

FB.Canvas.setAutoGrow 不会降低 iframe 高度,它只会在必要时增加。

根据我的测试,将尺寸明确设置为比实际高度更小的高度也不起作用。

【讨论】:

以上是关于FB iframe 画布高度的主要内容,如果未能解决你的问题,请参考以下文章

使用 iframe 是不好的做法吗? iframe 可以像画布一样被翻译成图像吗?

Facebook 如何在画布页面上为 iFrame 设置跨域 cookie?

设置织物js画布的100%高度和宽度

裁剪画布/导出具有特定宽度和高度的 html5 画布

更改画布宽度/高度时,将重置画布上下文

画布高度由 EaselJS 更改。如何避免这种情况?