2

我有 2 个 facebook 应用程序,一个是 872px 高度,另一个是 712px 高度。对于 827px 应用程序,我已使用 facebook JS SDK 成功地将应用程序的大小从 800 重新调整为 872px。但是对于 712 像素,我无法将其从 800 像素降低。facebook canvas 应用程序是否有最小高度,或者我做错了什么?

4

3 回答 3

5

显然 Canvas APP 不能低于 800 像素。

于 2012-05-17T19:29:23.267 回答
0

您是否尝试过动态设置高度?这对我有用,因为我试图显示高度小于 800 像素的多个页面。我的页面标签的通常高度约为 700 像素。

window.fbAsyncInit = function() {
   FB.init({
      appId: window.FB_APP_ID
   });

   // set height dependent on page (min height is 800px) 
   // but we are attempting to get it shorter
   var body_height = $('body').first().outerHeight();

   FB.Canvas.setSize({ 
      height: body_height
   });
}

什么也对我有用,如果不抓住身体高度是将高度设置为比加载时的任何页面都短,然后触发 setAutoGrow() 函数将其扩展到适当的高度,但会有一些延迟。虽然这会导致您的画布成为初始设置的高度(例如 480 像素),然后每当您的超时触发时都会扩大到大小。

window.fbAsyncInit = function() {
   FB.init({
      appId: window.FB_APP_ID
   });

   FB.Canvas.setSize({ 
      height: 480 // some height shorter than necessary
   });

   setTimeout(function(){
      FB.Canvas.setAutoGrow();
   }, 500);
}
于 2013-03-06T19:53:39.433 回答
0

处理它:

    FB.Canvas.getPageInfo(
        function(info) {
            // console.log(info);
            if (info.clientHeight< 800) FB.Canvas.setSize({ height: 800 });
        }
    );
于 2016-02-22T15:28:59.153 回答