我正在尝试在我的网站上的页面上放置一个Facebook Like-Box,然后通过我自己的CSS设置样式(主要是为了增加div#stream_content的高度。(想法是让FB feed行为作为新闻提要,但我不希望用户必须滚动以查看前两个项目,或者默认情况下这样做。)
我已阅读并试验过这些文章中的建议以及更多内容:
http://stackoverflow.com/questions/4064038/customizing-facebook-like-box ,
http://www.daddydesign.com/wordpress/how-to-customize-your-facebook-fan-box/,
http://hitech-tips.blogspot.com/2010/05/facebook-like-button-xfbml-tutorial.html
我要使用FBML路由(而不是使用iframe),因为我需要收集跨域样式表。我还收集到我的网页需要这个doctype声明:
<!doctype html lang="en" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en">
那么我在页面正文中有这个:
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
<fb:like-box
profile_id="***my ID here***"
width="450"
height="600"
colorscheme="dark"
show_faces="false"
stream="true"
header="false"
logobar="0"
css="http://***my domain here***/css/FBstyles.css?1"
href="http://www.facebook.com/***my page name here***"
></fb:like-box>
但我仍然会遇到这些错误:
“(4)不安全的JavaScript尝试使用URL {(我的网页)...从具有URL http://www.facebook.com/plugins/likebox.php?channel=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D2%23cb%3Dfd907a0e%26origin...blahblahblah
的框架访问框架。域,协议和端口必须匹配。”
我搞砸了哪里?
答案 0 :(得分:3)
我也走了这条路。虽然您使用的是FBML,但实际的嵌入式代码最终仍然是iframe。 (您可以在加载后使用HTML检查器在DOM中看到它)。关于我唯一能做的就是将它放在一个带有彩色背景的div中,因为iframe是透明的,还有一个边框。
由于Facebook服务器上的javascript正试图访问您服务器上的CSS,因此您可能会收到错误。我认为你不能这样做。
修改强>
在您提供的StackOverflow链接中,发布的答案清楚地表明使用您自己的CSS仅适用于“粉丝”框,而不是“喜欢”框。