我正试图用javascript利用Facebook的"Like Box"。这是我放入页面的代码片段。
<div class="fb-like-box" data-href="https://www.facebook.com/PageName" data-colorscheme="light" data-show-faces="true" data-header="true" data-stream="true" data-show-border="true"></div>
<div id="fb-root"></div>
<script type="text/javascript">
(function (d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
除了Newsfeed之外,所有内容都加载正确。我是不是错过了什么?这很奇怪,因为当我使用他们的iFrame方法时,它非常完美。但考虑到应用程序,我无法使用iFrame。
<iframe src="//www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2FPageName&width&height=590&colorscheme=light&show_faces=true&header=true&stream=true&show_border=true" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:590px;" allowTransparency="true"></iframe>
请记住,我将用实际的页面名称替换"PageName"。
奇怪的解决方案,在实现iFrame并测试它之后…我恢复到javascript方式,现在它成功加载了。。。有时我喜欢编码。一定是浏览器缓存问题
编辑(分辨率)-
原来这是Facebook端的一个bug!如果你没有登录,你会看到帖子,如果你登录了,你什么都看不到!