2011-10-27 8 views
0

は私のコードのthats - それはJS-FB-APIを含めるために、新しいHTML5-方法です:良い働いてHTML5 - ウェイ:FBが定義されていない

<div id="fb-root"></div> 
    <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/de_DE/all.js#xfbml=1&appId=XXXXXXXXXXXXXXXXX"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
    </script> 

...他に同じようなボタンと代について。しかしFB.Eventscribe ..を使用したい場合:

window.fbAsyncInit = function() { 
     FB.Event.subscribe('edge.create', function(response) { 
      $('#head h1 a').text('liked'); 
     }); 
     $('#head h1 a').text('loaded'); 
    } 

...ファイヤーバグはFBが定義されていないと私に言った。しかし、window.fbAsyncInitは正常に起動されました。問題はどこにありますか?

回答ありがとうございました。私の悪い英語をお詫び申し上げます!

答えて

1

を、私は同じ問題を抱えていた放火犯は、いくつかのエラーがあると指摘したが、私は、Firefoxでそれを使用することができます。 ChromeでChromeを使用できず、そのコンソールにFBが定義されていないと表示されました。 私はこのようにそれを試みたが、それが動作次に:

window.fbAsyncInit = function() { 
/* FB Likes */ 
FB.Event.subscribe("edge.create",function(response){ 
    $.ajax({ 
     /* bla bla */ 
    }); 
}); 
FB.Event.subscribe("edge.remove",function(response){ 
    $.ajax({ 
     /* bla bla */ 
    }); 
}); 
}; 
(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/bs_BA/all.js#xfbml=1&appId=MY-APP-ID"; 
fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 

そして、この作品、FB.initのようなエラーがすでに呼び出されていないか、それのような何でも:)

0

jQueryも使用するサイトで、HTML5ベースのFacebookとの統合を使用しています。

私のコードは少しあなたとは異なり、多分違いが問題:

if ($("#fb-root").length>0) { 
    // no window.fbAsyncInit w/o <div id="fb-root" /> being present in DOM 

    // call FB.init() first 
    FB.init(...); // you should pass the arguments you need for this 

    // call other stuff after FB.init() 
    FB.event.subscribe(...); // you should pass the arguments you need for this 
} 
+0

だから私は私でFB.initを使用する必要がありますFB-App-ID?私は、行の中で自分のApp-IDをタイプしたときには十分だと思った: js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=XXXXXXXXXXXXXXXXX"; – Franky

+0

私はあなたが*これをしなければならないかどうか本当に分かりませんが、少なくとも非解決策としてこれを排除しています。 – Teddy

関連する問題