首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅限IE8 : Facebook喜欢没有显示的框

仅限IE8 : Facebook喜欢没有显示的框
EN

Stack Overflow用户
提问于 2011-10-19 17:56:51
回答 3查看 6K关注 0票数 2

因此,我和其他很多人一样遇到了一个问题:像Box这样的Facebook没有在IE8中播放(IE7 OK)。我找到了很多关于这方面的帖子,尝试了所有的解决方案,但没有成功.IE8消息:FB.FBXML Null或非对象

注意:有一个函数可以处理FB类Box的大小调整。

这是我的HTML5代码:

代码语言:javascript
复制
<!doctype html>
<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="fr" xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/"  xmlns:fb="http://www.facebook.com/2008/fbml"><![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="fr"> <!--<![endif]-->
<head>
...
    <script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
</head>
<body>
...
    <article>
    <div class="row" id="content">
            <div class="twelvecol last">
            <div id="fb-root"></div>
                <div class="fb-like-box" data-href="http://www.facebook.com/divstudio" data-width="1140" data-show-faces="true" data-stream="true" data-header="false"></div>
            </div>
    </div>
    </article>
...

<script>
$(document).ready(function(){
        var contentwidth = $('#content').width();
        $('.fb-like-box').attr('data-width', contentwidth - '40');
        FB.FBXML.parse(document.getElementsByClassName('.fb-like-box'));
});
</script> 

 <script>(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/all.js#xfbml=1";
                  fjs.parentNode.insertBefore(js, fjs);
                }(document, 'script', 'facebook-jssdk'));</script>      
</body>
</html>

有什么想法吗?

网址:http://www.divstudio.fr/emergenza/jazz/actu.html

thx很多

EN

回答 3

Stack Overflow用户

发布于 2012-04-10 19:56:16

您应该将这些行添加到标记中。

代码语言:javascript
复制
xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/"
xmlns:fb="http://www.facebook.com/2008/fbml"

如果标签中已经有任何属性,请保持原样。这样开始的html标记就会变成这样。

代码语言:javascript
复制
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml" lang="<?php print $language->language ?>" xml:lang="<?php print $language->language ?>" dir="<?php print $language->dir ?>">

如果启用缓存,则清除缓存。它应该在IE-8中工作。

票数 4
EN

Stack Overflow用户

发布于 2013-05-10 01:33:09

我也遇到了同样的问题,添加适当的xmlns属性没有帮助。事实证明,导致我的问题的是另一个问题:Facebook like box not showing up when user is not logged into Facebook。Igy和wasim kazi的答案使我找到了解决方案。下面是如何解决这个问题的方法:

  1. 登录到管理您希望在“相似”框中反映的页面的Facebook帐户上。在左侧导航栏上的
  2. 单击“Pages”。
  3. 单击页面标题以打开该页面的管理面板。
  4. 单击“编辑页->编辑”看到一个标有“国家限制”的框。如果在此框中列出了任何国家,则如果用户未登录到Facebook和中,则您的类似框将为空--在Internet (7、8、9)中为空白。这是有意义的: Facebook要想明确地实施地理限制,唯一的办法就是确保用户登录。为什么这会影响IE (不管用户是否登录)是一个谜,但在我的例子中,这就是问题的原因。
票数 3
EN

Stack Overflow用户

发布于 2012-01-06 21:01:45

我对drupal 6的facebook模块也有同样的问题。

我通过将标记类型从XFBML更改为HTML5来解决问题。

然后,我在HTML5部分中添加了<head>脚本:

代码语言:javascript
复制
<!--[if lt IE 9]>
  <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

我希望这也能解决你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7825800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档