我在ASP.net应用程序中使用Facebook C#SDK。 我有一个iFrame应用程序,其iFrame Size设置为Showscrollbars。 应用程序工作正常,直到昨天,但今天iFrame没有延伸到它的宽度(从文档Facebook的iFrame宽度是760px Link here)。应用程序宽度中的页面设置为95%。所以我认为它不是我的应用程序中的宽度问题。 。 我必须为我的应用程序使用Showscrollbars选项。 Facebook改变了iFrame应用程序的任何设置吗?请帮助。
更新看起来facebook破坏了某些东西,或者他们正试图摆脱滚动条选项。我必须更改我的应用程序才能使用AutoResize Option。我对我的asp.net应用程序进行了以下更改,除了一个问题之外它工作正常(请参阅问题的底部)
<head runat="server">
<title></title>
<script type="text/javascript">
window.fbAsyncInit = function () {
FB.Canvas.setAutoResize();
};
</script>
</head>
<body>
<div id="fb-root"></div>
<script src="//connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
appId: '12345678', //replace with your facebook appid
cookie: true,
status: true,
xfbml: true
});
</script>
</body>
当内容增加时,iFrame会垂直拉伸。这很酷但是 问题是Read Here on StackOverflow。我正在做。如果有人说出来,请告诉我。
答案 0 :(得分:1)
我遇到了同样的问题,并在iFrame页面中用这个简单的CSS修复了它
body {overflow:hidden;}
一切都仍然很好,没有任何切断。只是摆脱那些讨厌的滚动条! 它当然听起来像一个bug,在所有其他浏览器中运行良好,但FF 3.6 添加上述内容还具有不会在负载上暂时显示srollbars的优势。答案 1 :(得分:0)
使用下面的代码,它适用于我的所有iframe应用:)
<div id="fb-root"></div>
<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">
FB.init({
appId: '123456789',
status: true,
cookie: true,
xfbml: true
});
FB.Canvas.setAutoResize();
FB.Array.forEach([200, 600, 1000, 2000, 5000, 10000], function(delay) {
setTimeout(function() {
FB.Arbiter.inform("setSize", FB.Canvas._computeContentSize());
}, delay)
});
</script>