当内容未加载Facebook特定时,iframe内容填充

时间:2014-01-18 01:35:03

标签: html facebook iframe

我正在以iframe形式安装类似Facebook的盒子。当您未登录Facebook时,会留下一个空白点,该空白点设置为原始iframe指定的参数。当有人没有登录Facebook时,我想填写带有图像的iframe链接到Facebook页面。

已登录: http://ripvision.tv/images/fb-logged-in.PNG

未登入: http://ripvision.tv/images/fb-not-logged-in.PNG

你可以在“登录”中看到我试图设置一个带有背景图像的类,以便在内容没有显示时显示,但是在内容加载和没有时显示。如果Facebook内容没有加载,我只想加载图片链接。我已经尝试了我能想到的一切。

我认为在iframe的样式中添加背景颜色会起作用,但事实并非如此。以下是来自Facebook的iframe代码。

   <iframe class="fb_background" src="//www.facebook.com/plugins/likebox.php?href=http  %3A%2F%2Fwww.facebook.com%2Fteamripoutdoors&amp;width=236&amp;height=258&amp;colorscheme=light&amp;show_faces=true&amp;header=false&amp;stream=false&amp;show_border=false" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100%; height:258px; background-color: #000;"  allowTransparency="true"></iframe>

我被困在这几个小时。如果有人可以提供帮助,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

我会将FB.getLoginStatus用于此

  

FB.getLoginStatus允许您确定用户是否已登录   Facebook并已验证您的应用程序。有三种可能   用户的状态:

     
      
  1. 用户已登录Facebook并已验证您的身份   申请(已连接)

  2.   
  3. 用户已登录Facebook,但尚未对您的应用进行身份验证   (NOT_AUTHORIZED)

  4.   
  5. 此时用户未登录Facebook,因此我们不知道他们是否已对您的应用进行身份验证(未知)

  6.   

在这种情况下我们将使用 not_authorized这意味着用户登录了他们的Facebook帐户并显示了类似的框

unknown表示用户未登录其Facebook帐户并显示后备图像

FB.getLoginStatus(function(response) {

  if (response.status === 'not_authorized') {
    // the user is logged in to Facebook, 
    // but has not authenticated your app
    $('#likeBoxDiv').fadeIn();
  } else {
    // the user isn't logged in to Facebook.
    $('#likeBoxDiv').html('{YOUR_FALLBACK_DIV');
  }

});

这是一个简单的Fiddle

请注意:为此创建应用,不对使用此应用的任何用户进行身份验证,否则您还必须添加connected语句