Je sais que cette question est posée fréquemment, mais je n'ai pas trouvé la solution ..__ J'utilise ce code:
ouvrez le tag html avec
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#">
dans l'index immédiatement après la balise d'ouverture je suis entré dans cette
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
// init the FB JS SDK
FB.init({
appId : 'MY_APP_ID', // App ID from the app dashboard
status : true, // Check Facebook Login status
xfbml : true // Look for social plugins on the page
});
// Additional initialization code such as adding Event Listeners goes here
};
// Load the SDK asynchronously
(function(){
// If we've already installed the SDK, we're done
if (document.getElementById('facebook-jssdk')) {return;}
// Get the first script element, which we'll use to find the parent node
var firstScriptElement = document.getElementsByTagName('script')[0];
// Create a new script element and set its id
var facebookJS = document.createElement('script');
facebookJS.id = 'facebook-jssdk';
// Set the new script's source to the source of the Facebook JS SDK
facebookJS.src = '//connect.facebook.net/it_IT/all.js';
// Insert the Facebook JS SDK into the DOM
firstScriptElement.parentNode.insertBefore(facebookJS, firstScriptElement);
}());
</script>
enfin le bouton
<fb:like href="http://mydomain.it/" layout="button_count" action="like" show_faces="false" share="false"></fb:like>
<script>
FB.Event.subscribe('Edge.create',
function(href, widget) {
alert('Ti piace ' + href);
});
</script>
le même fonctionne, mais n'ouvre pas l'alerte et j'ai eu cette erreur dans la console.
Uncaught ReferenceError: FB is not defined
Des solutions?
Voir cette discussion: Le FB n'est pas défini dans Facebook Login .
Vous essayez d'utiliser FB
juste après votre bouton, et celui-ci n'est pas encore défini:
<fb:like href="http://mydomain.it/" layout="button_count" action="like" show_faces="false" share="false"></fb:like>
<script>
FB.Event.subscribe(...
^--- FB isn't defined yet!
Déplacez ce code FB.Event.subscribe
dans votre fonction window.fbAsyncInit
, où vous avez ce commentaire "Code d'initialisation supplémentaire"
Une autre raison pour laquelle vous obtenez cette erreur est parce que vous êtes manquant; après le support de définition fbAsyncInit.
window.fbAsyncInit = function() {
};