2011-08-26 130 views

回答

3

note指示如何操作。设置应用程序设置为自动调整大小: enter image description here

然后调用FB.Canvas.setSize()或FB.setAutoResize()以删除滚动条,如果它们仍在出现。

+0

另外使用Facebook-JS-SDK和使用FB.setAutoResize()函数来触发调整大小如果画布高度是可变的在页面上。 –

+0

感谢OffBySome和Ashwini,你的两条建议都奏效。我还需要添加溢出:隐藏;我的身体标记 –

+0

Facebook应用程序的界面是不同的,他们没有选项帆布类型。 – Shiro

1

试试这个到iframe内容的末尾:

 <div id="fb-root"></div> 
    <script type="text/javascript"> 
    window.fbAsyncInit = function() { 

    //Der folgende Code ändert die Grösse des iFrames alle 100ms 
    FB.Canvas.setAutoResize(100); 

    }; 
    (function() { 
    var e = document.createElement('script'); 
    e.async = true; 
    e.src = document.location.protocol + 
    '//connect.facebook.net/en_US/all.js'; 
    document.getElementById('fb-root').appendChild(e); 
    }()); 

    </script> 
+0

这对我在2012年2月工作 – Duane

+1

看起来他们已经改变它,FB.Canvas.setAutoGrow();似乎现在工作(2012年10月) – errkk

0

安德鲁智能:我能够复制你的错误这里每一个网页应用程序的高度。

使用我的网页应用程序的@http://www.facebook.com/anotherfeed?sk=app_135669679827333

我用JavaScript来calulate内页高7秒。“7000ms”页面加载完成,以避免错误后。在页面标签应用程序的底部,你会看到...

此页面加载时间为1.724007秒。 W:520 x H:800其中实际iframe的高度为5704px。

<iframe name="app_runner_4e581c03cfc387e71622269" id="app_runner_4e581c03cfc387e71622269" style="width: 520px; height: 5704px; " frameborder="0" src="http://static.ak.facebook.com/platform/page_proxy.php?v=4#app_runner_4e581c03cfc387e71622269"></iframe> 

该网页似乎回到800像素的高度,无论该网页是多久,我beleive这是在page_proxy.php一个错误,并且错误可能是值得提交的Bugzilla。

我用于页面的高度的代码:

<div id="pagestats"></div> 
<script> 
<!--        Hide from non-JS browsers 
    var scnWid,scnHei; 
    if (self.innerHeight) // all except Explorer 
    { 
     scnWid = self.innerWidth; 
     scnHei = self.innerHeight; 
    } 
    else if (document.documentElement && document.documentElement.clientHeight) 
     // Explorer 6 Strict Mode 
    { 
     scnWid = document.documentElement.clientWidth; 
     scnHei = document.documentElement.clientHeight; 
    } 
    else if (document.body) // other Explorers 
    { 
     scnWid = document.body.clientWidth; 
     scnHei = document.body.clientHeight; 
    } 
    setTimeout("document.getElementById('pagestats').innerHTML='W:'+scnWid+' x H:'+scnHei+'';",7000); 
// --> 
</script> 
0
<script type="text/javascript"> 

window.fbAsyncInit = function() { 

    FB.init({ 
     appId: 'APP_ID', 
     status: false, 
     cookie: true, 
     xfbml: true 
    }); 

    FB.XFBML.parse(); 

    FB.Canvas.setSize({ width: '520px', height: '1580px' });   

    FB.Canvas.scrollTo(0,0); 
    }; 
    (function(d){ 
    var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    d.getElementsByTagName('head')[0].appendChild(js); 
    }(document)); 

</script>