在我的 facebook iframe 应用程序中,我的主页有点长(大约 1500 像素),但辅助页面的高度较小。
我发现我的页脚和二级页面中 Facebook 的页脚之间有很多空白。
我检查了iframe源代码,发现height属性设置正确,但是style标签内还有另一个高度值,它保留了主页高度。
<iframe class="canvas_iframe_util noresize" frameborder="0" scrolling="no" id="iframe_canvas" name="iframe_canvas" src='javascript:""' height="600px" style="height: 1566px; overflow-y: hidden; "></iframe>
下面是我用来调整框架大小的代码(位于母版页中)
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
appId: 'my app',
status: true, // check login status
cookie: true, // enable cookies to allow the server to access the session
xfbml: true// parse XFBML
});
FB.Canvas.setAutoResize(7);
</script>
我的辅助页面大小是动态的,因此我无法使用固定高度。 非常感谢任何帮助我利用辅助页面上额外空白的帮助。
谢谢
最佳答案
前几天我做了一个 Facebook Canvas 应用程序,我写了这个小代码来解决高度问题。
<script>
FB.Canvas.setSize({ height: document.getElementById('wrapper').offsetHeight });
</script>
当然,这段代码需要 <div id="wrapper"></div>
包裹整个页面。
在触发之前,您必须确保 DOM 中的所有内容都已加载。这就是为什么我把它放在 </body>
之前。 。但有时未指定高度的图像可能会出现一些问题。因此,要么您指定所有图像的高度,要么您可以在 jQuery 和 document.ready() 的帮助下触发它。
关于asp.net - Facebook应用程序高度问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8339121/