2011-06-02 33 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日完全刪除功能 。

相關問題