タブの iFrame 内で使用している Facebook アプリケーションを作成しました。
Javascript SDK の setAutoGrow 関数を使用して、コンテンツの最後まで iFrame を拡張しています。
私の観察によると、setAutoGrow 関数は IE7 では機能せず、その理由がわかりません。他のすべてのブラウザー (IE8 および 9 を含む) は正常に動作しています。
テスト目的で、高さ 1500px のグラデーションを作成しました。
例として、Chrome でどのように表示されるかを投稿します。ご覧のとおり、グラデーションは最後までスクロールできます (赤色):
そして今、IE7で何が起こるかが来ます。iFrame のデフォルトの高さは 800px (アプリ設定で定義) です。「ターコイズ」で停止し、setAutoGrow 関数によって目的の高さ (1500px) まで拡張されていないことがわかります。
私の CSS の重要な部分は次のようになります。
body, html {
overflow: hidden;
margin: 0; padding: 0;
}
#wrapper {
margin: 0 auto;
width: 810px;
}
#content {
background: url(../img/bg.jpg) top left no-repeat;
height: 1500px;
}
そして、これは、body-tag の直前と fb-root タグの後に配置した JavaScript スニペットです。
window.fbAsyncInit = function() {
FB.init({
appId : '...',
channelUrl : '...',
status : true,
cookie : true,
xfbml : true
});
FB.Canvas.setAutoGrow();
};
FB によって閉じられた 8 月 1 日にさかのぼるバグ レポートを見つけました: https://developers.facebook.com/bugs/209607222498543?browse=search_5009002cb69058a73627413
次のトピックのヒントを読んで適用しました: Facebook iframe FB.Canvas.setAutoGrow は初期ロード後に自動拡張されませんか?
...しかし、何も問題を解決していないようです。
この問題の明白なヒント、私が監督したもの、または簡単な解決策/回避策を誰かが持っていますか?
IE7 DebugBar を使用しているときに、「dimension_context.php」という URL の読み込みに問題があることに気付きました。スクリーンショットを添付します。