Facebook像按钮呈现0宽度和0高度?

时间:2015-05-28 05:26:23

标签: javascript html facebook

我是facebook api的新手,所以我不知道这是否是一个新手问题。我做的是我在Quick Start

后跟进

我将以下代码段放在<body>的开放标记处(当然替换了my-app-id)

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : 'your-app-id',
      xfbml      : true,
      version    : 'v2.3'
    });
  };

  (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 = "http://connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

我在想要出现类似按钮的地方有以下代码段:

<div
  class="fb-like"
  data-send="true"
  data-width="450"
  data-show-faces="true">
</div>

这是渲染的结果:

<div class="fb-like fb_iframe_widget" 
     data-send="true" 
     data-width="450" 
     data-show-faces="true" 
     fb-xfbml-state="rendered" 
     fb-iframe-plugin-query="...">
    <span style="vertical-align: top; width: 0px; height: 0px; overflow: hidden;">
        <iframe name="f246b6fae4" width="450px" height="1000px" frameborder="0" allowtransparency="true" allowfullscreen="true" scrolling="no" title="fb:like Facebook Social Plugin" src="..">...</iframe>
    </span>
</div>

我省略了查询和src部分。我不明白它为什么用0宽度和0高度渲染。父级和自我div都没有被隐藏的样式。请告诉我我做错了什么?

1 个答案:

答案 0 :(得分:1)

如果没有看到整个代码,很难给出答案,但可能是因为以下原因:

您使用的是http而不是https,因此,Facebook不允许您的请求通过。运行脚本在运行时在浏览器控制台中出现以下错误:

  

混合内容:“https://jsfiddle .net / v98vq53r /”页面是通过HTTPS加载的,但请求了一个不安全的脚本“http://connect.facebook.net/en_US/sdk.js”。此请求已被阻止;内容必须通过HTTPS提供。