2012-04-09 6 views
0

Ich habe einen Like-Button und einen Login-Button auf der gleichen Seite. Die Seite befindet sich außerhalb eines Facebook-Iframes. Wenn ich nicht eingeloggt bin und mich über die Login-Schaltfläche anmelde, wird der Status der Like-Schaltfläche nicht aktualisiert. Aber wenn ich nicht eingeloggt bin und mich über den Like-Button anmelde, wird der Login-Button aktualisiert. Von dem, was ich sagen kann, die Schaltfläche "Gefällt mir" scheint nicht in der Lage zu sein, die Updates zu erhalten, wenn window.fbAsyncInit abgefeuert wird.Facebook wie Schaltfläche Statusaktualisierung

Gibt es eine Möglichkeit, den Like-Button zu aktualisieren, wenn ich mich über einen anderen Facebook-Button auf der Seite anmelde?

Antwort

0

Hier ist ein Workaround.

Abonnieren Sie die auth.statusChange (http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/) und überprüfen Sie, ob es eine erfolgreiche Anmeldung ist. Wenn dies der Fall ist, geben Sie den entsprechenden Schaltflächencode in Ihrem DOM erneut ein und lassen Sie das JavaScript SDK dann erneut analysieren, indem Sie FB.XFBL.parse() (http://developers.facebook.com/docs/reference/javascript/FB.XFBML.parse/)

verwenden
+0

Hallo. Du hast mir eine gute Idee gegeben. Ich hatte das abonniert (auth.statusChange), also wenn ich den FB.login anrufe, überschreibe ich den HTML-Code mit jQuery und es aktualisiert den Like-Button genau so, wie ich es wollte. Vielen Dank! FB.login (function (Antwort) { if (response.authResponse) { \t \t \t \t \t \t \t \t FB.api ('/ me', function (Antwort) {\t \t \t \t \t \t \t \t Fenster. fbAsyncInit(); \t \t \t \t \t \t $ ("fb-like-footer. ") html (''); $ (" fb-like-footer.") html.. ('neuer hTML-Code hier') ; }); \t \t \t \t \t \t \t $ ._ tracking.setCustomVar ([1, 'FBConnect', 'TRUE', 2]); \t } sonst { } }, {scope: 'read_stream'}); – amcnutt

Verwandte Themen