2012-06-02 7 views
9

私はFB.Canvas.setAutoGrow(7);を使ってページを拡大しています(ページ=高スコアテーブルは成長する必要があります)。setAutoGrow:もう一度他のページを "縮める"

しかし、私が他のページに戻ると、キャンバスは成長し続けますが、コースからは新しいコンテンツに適応する必要があります。基本的には、再び縮小する必要があります。

setSizeを試しましたが、うまくいきませんでした。

私を助けることができる人は誰ですか?私は時間を探していた... ありがとうたくさんの!

+0

他のページでもsetAutoGrowを使用していますか? – CBroe

答えて

20

はこれを試してください - あなたが新しいページをロードする際にキャンバスを縮小し、その後setAutoGrow(呼び出し)ここ

FB.Canvas.setSize({height:600}); 
setTimeout("FB.Canvas.setAutoGrow()",500); 

は、溶液にhttp://www.twistermc.com/36764/shrink-facebook-tabs/

+0

ありがとうございました。これは助けになりました:) – EinLama

+0

私は助けてよかった –

+0

これは私のために働いた解決策です。 – Ryan

2

AFAIK FB.Canvas.setAutoGrow()はiframeのみを拡張します。それはそれを縮めません。私はしばらくの間、似たような機能を探していますが、iframeを縮小する方法に関するドキュメントはありません。もし誰かが一種のautoShrink()を行う関数を思いついたのであればいいだろう。

+0

か、FB.Canvas.AutoSize()を作成するだけです。今それは役に立つでしょう。 –

+0

上記の私の回答を見てください。私はキャンバスを小さくし、setAutoGrow()はそれが必要な方法でそれを修正します。 –

1

を記述する記事全文である私はSetAutoGrowがミスした問題がありましたページの下部にあるFBコメントのボトムマージンによってスクロールバーがわずかに計算されます。

私自身が上記の建物を書いています。

var mainContainer = $("#training"); 

var resizeTimer = setInterval(function() { 

    // fix for FF to make setAutoGrow work. 
    mainContainer.height('auto'); 
    var newHeight = mainContainer.height(); 
    mainContainer.height(newHeight); 

    // fixes lack of auto shrink 
    FB.Canvas.setSize({ height: newHeight }); 
}, 500); 
関連する問題