2011-06-02 65 views
1

好的,所以我一直在研究改变每个页面高度的FB应用程序。我,显然在我的应用程序布局中使用的setAutoResize功能,我有以下几点:FB setAutoResize无法在FF上工作

window.fbAsyncInit = function() { 
    FB.init({appId: '###', status: true, cookie: true, xfbml: true}); 
    FB.Canvas.setAutoResize();   
}; 

并能正常工作在IE,Safari和Chrome,但不是在FF4。我也用过:

window.setTimeout(function() { 
    FB.Canvas.setSize({height: $('body').height()});     
}, 1000); 

但没有运气。有没有人经历过这个?提前tnx。 马克

+0

我遇到同样的问题。如果您想出解决方案,请告诉我们。 – 2011-07-06 00:50:53

回答

0

这听起来像它可能是一个错误?退房: http://bugs.developers.facebook.net/show_bug.cgi?id=10889

如果这影响到你投上一票:)

+0

谢谢,我忘了更新帖子。第二天,当调整大小再次工作时,我发现了这一点。这很有趣,因为调整大小有些日子,它在其他jejeje打破。无论如何,这是固定的。谢谢。 – Mark 2011-07-21 12:05:57

2

的答案已经提供了,但我还不如后我的解决问题的办法。在Firefox中,即使页面适合,滚动条仍然是iFrame的一部分。他们只是没有蓝色的卷轴。这增加了大约20px。

我不认为你的jQuery解决方案将工作,因为height()不考虑边距和填充。也许试试这个。

FB.Canvas.setSize({ height: $(document.body).outerHeight(true) + 20, width: 760 }); 
1

我说这我的CSS和它似乎工作(没有与我AUTORESIZE渣土):

body { 
    margin-top: -20px; 
    padding-top: 20px; 
} 

如果你已经有填充添加到您的身体的顶部,你可能需要添加20px。

我认为这是因为Firefox比其他浏览器测量的身高有所不同。

在ff8,chrome16和ie9中测试,没有负面影响。

+0

一个不错的:)这为我工作! – RicardoE 2013-04-08 23:19:02

0

仅供参考警告!按照Facebook Developer RoadmapFB.Canvas.setAutoResize将被重新命名为FB.Canvas.setAutoGrow 7月5日,2012年

从页面:

我们已经改名FB.Canvas.setAutoResize到FB.Canvas.setAutoGrow这样 该方法更准确地代表其功能。 FB.Canvas.setAutoResize将于7月5日停止工作。我们将在8月1日完全删除功能 。

相关问题