IE7 - setAutoGrow不起作用

Mar*_*ram 11 css facebook internet-explorer-7

我在tab的iFrame中创建了一个facebook应用程序.

我正在使用Javascript SDK的setAutoGrow函数来使iFrame扩展直到内容结束.

根据我的观察,setAutoGrow函数在IE7中不起作用,我无法弄清楚原因.所有其他浏览器(包括IE8和9)都正常工作.

出于测试目的,我创建了一个1500px高的渐变.

用于1500px高度测试的示例梯度

举个例子,我会在Chrome中发布它的样子.如您所见,渐变可以滚动到结尾(红色):

iFrame选项卡内的渐变在普通浏览器中按预期工作

现在,IE7中发生了什么.iFrame的默认高度为800px(在应用程序设置中定义).您可以看到它停在"绿松石",并且setAutoGrow函数不会将其扩展到所需的高度(1500px).

iFrame选项卡内的渐变在IE7中不会扩展

我的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;
        }
Run Code Online (Sandbox Code Playgroud)

这是我在关闭的body-tag之前和fb-root标签之后放置的javascript片段:

window.fbAsyncInit = function() {

    FB.init({

        appId      : '...',
        channelUrl : '...',
        status     : true,
        cookie     : true,
        xfbml      : true

    });

    FB.Canvas.setAutoGrow();

};
Run Code Online (Sandbox Code Playgroud)

我发现了一个可以追溯到8月1日的错误报告,该报告已被FB关闭:https://developers.facebook.com/bugs/209607222498543? broowse = search_5009002cb69058a73627413

我已经阅读并应用了以下主题的提示: Facebook iframe FB.Canvas.setAutoGrow在初始加载后不会自动增长?

......似乎没有什么能解决这个问题.

有没有人有一个明显的暗示,我监督的东西,或这个问题的简单解决方案/解决方法?

当我使用IE7 DebugBar时,我注意到加载名为"dimension_context.php"的URL时出现问题.我会附上截图.

IE7 DebugBar加载问题

Ana*_*bhi 1

我正在使用这个可能对你有帮助

<html>
<body>
    <div id="fb-root">
    </div>
    <script type="text/javascript" language="javascript" src="http://connect.facebook.net/en_US/all.js"></script>
    <script type="text/javascript" language="javascript">
        FB.init({
            appId: 'APPID',
            status: true, // check login status
            cookie: true, // enable cookies to allow the server to access the session
            xfbml: true// parse XFBML
        });
        window.fbAsyncInit = function () {
            FB.Canvas.setSize();
        }
        //  FB.Canvas.setAutoResize();
        FB.Canvas.setAutoGrow(7);
    </script>
<form></form>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)