7

最近、XFBML を使用して Facebook のログイン ボタンと Facebook の「いいね」ボタンを実装しました。サイトはhttp://colnect.comでご覧いただけます。

すべてが FireFox、Chrome、Opera、Safari で問題なく動作します。

ただし、IE には「ログイン」ボタンも「いいね」ボタンも表示されず、エラー メッセージも表示されません。

何か案は?

4

3 に答える 3

7

誰かの役に立てればと思って自分で答えるタイプになりそうです。

Internet Explorer が Facebook を認識できるようにするには、追加する必要があります

xmlns:fb="http://www.facebook.com/2008/fbml"

あなたのhtmlタグに、私にとっては

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en">

私が抱えていた 2 番目の問題は、IE が Array.indexOf() をサポートしていないことでした。

if(!Array.indexOf){
  Array.prototype.indexOf = function(obj){
          for(var i=0; i<this.length; i++){
              if(this[i]==obj){
                  return i;
              }
          }
      return -1;
  }
}

それが役に立てば幸い。

于 2010-09-21T09:32:58.263 に答える
2

このコードで問題を解決しました。私の場合、残りのソリューションは機能しませんでした。

<script>

    window.fbAsyncInit = function() {
        FB.init({
          appId  : '330984983742',
          status : true, // check login status
          cookie : true, // enable cookies to allow the server to access the session
          xfbml  : true  // parse XFBML
        });
    };

    (function() {
        var e = document.createElement('script');
        e.src = document.location.protocol + '//connect.facebook.net/<?php echo ($_SESSION["lang"]=="es")?"es_ES":"en_US"; ?>/all.js';
        e.async = true;
        document.getElementById('fb-root').appendChild(e);
        FB.XFBML.parse('fb-stuff'); 
    }());

</script>

それが他の誰かを助けることを願っています。

于 2011-01-16T03:44:14.967 に答える
0

私にとって、そのトリックを一貫して行ったclass='fb-like'のは、<fb:like>タグに追加することでした。

于 2011-10-04T09:15:10.913 に答える