ページを拡大するために使用FB.Canvas.setAutoGrow(7);
しています(page = highscoreテーブルなので、拡大する必要があります)。
ただし、他のページに戻ると、キャンバスは拡大したままですが、もちろん、新しいコンテンツに適応する必要があります... 基本的に、再び縮小する必要があります。
setSize を試しましたが、うまくいきませんでした。
誰でも私を助けることができますか?私は何時間も探していました...どうもありがとう!!!
ページを拡大するために使用FB.Canvas.setAutoGrow(7);
しています(page = highscoreテーブルなので、拡大する必要があります)。
ただし、他のページに戻ると、キャンバスは拡大したままですが、もちろん、新しいコンテンツに適応する必要があります... 基本的に、再び縮小する必要があります。
setSize を試しましたが、うまくいきませんでした。
誰でも私を助けることができますか?私は何時間も探していました...どうもありがとう!!!
これを試してください-新しいページをロードしてから setAutoGrow() を呼び出すときにキャンバスを縮小します
FB.Canvas.setSize({height:600});
setTimeout("FB.Canvas.setAutoGrow()",500);
これは、ソリューションを説明する完全な記事ですhttp://www.twistermc.com/36764/shrink-facebook-tabs/
AFAIK FB.Canvas.setAutoGrow() は iframe のみを拡大します。それはそれを縮小することはありません。しばらくの間、同様の機能を探していましたが、iframe の縮小に関するドキュメントはありません。誰かが一種の autoShrink() を実行する関数を思いついたらいいですね。
ページの下部にある FB コメントの下余白が原因で、SetAutoGrow の計算がわずかに間違っていて、scrollBar が発生するという問題がありました。
上記の上に自分の建物を書いていることに気づきました。
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);