Facebook Canvas App高度低于800px

时间:2012-05-10 14:39:15

标签: facebook-apps

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

3 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:0)

你尝试动态设置高度吗?这对我有用,因为我试图显示多个高度小于800px的页面。我的页面标签的通常高度是~700px。

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()函数将其扩展到适当的高度,但有一些延迟。虽然这会导致你的画布成为初始设定高度(例如480px),但只要你的超时发生,它就会扩展到大小。

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);
}

答案 2 :(得分:0)

处理它:

    FB.Canvas.getPageInfo(
        function(info) {
            // console.log(info);
            if (info.clientHeight< 800) FB.Canvas.setSize({ height: 800 });
        }
    );