Facebook Like-button manchmal angezeigt, manchmal nicht
Habe ich merkwürdige Problem mit der like-buttons auf meiner Website. Wenn ich eine Seite zeigt sich richtig, als nach dem aktualisieren nicht angezeigt wird und ich habe javascript-Fehler
FB.provide is not a function [Break on this error] FB.provide('Array',{indexOf:function(a...|c.hasOwnProperty(d))a(c[d],d,c);}});
Initialisierung und asynchrone einschließlich der js sieht wie folgt aus
<body>
<div id="fb-root"></div>
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.init({appId: 'fffffffffffffffffffffffffffffff', status: true, cookie: true, xfbml: true});
};
(function() {
var e = document.createElement('script');
e.type = 'text/javascript';
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
</script>
Und hier ist der code-Eingabe von like und share buttons:
<fb:like href="<%= link -%>" layout="button_count" font="arial"></fb:like>
<a title="Share" name="fb_share" type="button_count" share_url="<%= link -%>" href="http://www.facebook.com/sharer.php">Share</a><script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
Irgendwelche Ideen ?
- Haben Sie versucht, entfernen
/js/FB.Share
Skript (zum testen)? - Auch ich habe ähnliches problem. Dieser Fehler erscheint nur in Firefox.
- Goran, indem die all.js auf Ihrem eigenen server ist nicht empfehlenswert, da es sich um ein 'work-in-progress'-irgendwie-Datei -- Sie halten Sie es von Zeit zu Zeit.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich, dass die Bestellung auch ankommt, also beim laden von Dateien dynamisch, all.js geladen werden sollen vor FB.Aktie js
Denke ich, dass ich die Lösung gefunden.
Wenn ich geladen all.js Datei, wie Sie getan, ich hatte auch ein problem, aber wenn ich heruntergeladen all.js manuell und kopiert es irgendwo auf der Website. Danach laden Sie es durch den script-tag gemacht, das problem ging Weg.
Nachdem Sie fertig sind mit der Platzierung Ihrer html im DOM, rufen Sie einfach
window.fbAsyncInit();
.