2016-03-21 4 views
0

Ich arbeite an einem Cordova Projekt und benutze Facebook Login als eine der Benutzer-Authentifizierung. Der Login funktioniert einwandfrei, aber das Problem ist, dass ich einen Knopf einer ID getinfo drücken muss, bevor die Werte von Facebook erscheinen. Aber was ich tun möchte ist, wenn die Anmeldung richtig ist, sollten die Werte automatisch an die divs angehängt werden.Werte automatisch anfügen, nachdem Facebook Login korrekt ist

$(document).ready(function() { 
    $("#login").on('click', function (event) { 
     // Defaults to sessionStorage for storing the Facebook token 
     openFB.init({ appId: '000000000000000' }); 

     // Uncomment the line below to store the Facebook token in localStorage instead of sessionStorage 
     // openFB.init({appId: 'YOUR_FB_APP_ID', tokenStore: window.localStorage}); 

     openFB.login(
       function (data) { 
        if (data.status === 'connected') { 
         $id = $("#id").append(data.id) 
         $name = $("#name").append(data.name) 
         $gender = $("#gender").append(data.gender) 
         $email = $("#email").append(data.email) 
        } else { 
         alert('Facebook login failed: ' + data.error); 
        } 
       }); 

    }); 
}); 

Wie mache ich meinen Skript arbeiten, ohne dass dies unter Funktion

$(document).ready(function() { 
    $("#getinfo").on('click', function (event) { 
     openFB.api({ 
      path: '/me', 
      success: function (data) { 
       console.log(JSON.stringify(data)); 
       $id = $("#id").append(data.id) 
       $name = $("#name").append(data.name) 
       $gender = $("#gender").append(data.gender) 
       $email = $("#email").append(data.email) 
       document.getElementById("userPic").src = 'http://graph.facebook.com/' + data.id + '/picture?type=small'; 
      }, 
      error: errorHandler 
     }); 
    }); 
}); 
+0

Fehlermeldungen? hast du es debuggen? Das ist eine Menge sinnlosen JQuery-Code, vielleicht solltest du Vanille-Javascript lernen und eine Weile JQuery vergessen ... – luschn

Antwort

0

diese Login-Funktion versuchen:

openFB.login(
    function (data) { 
    if (data.status === 'connected') { 
     openFB.api({ 
      path: '/me', 
      success: function (data) { 
       console.log(JSON.stringify(data)); 
       $id = $("#id").append(data.id) 
       $name = $("#name").append(data.name) 
       $gender = $("#gender").append(data.gender) 
       $email = $("#email").append(data.email) 
       document.getElementById("userPic").src = 'http://graph.facebook.com/' + data.id + '/picture?type=small'; 
      }, 
      error: errorHandler 
     }); 
    } else { 
     alert('Facebook login failed: ' + data.error); 
     } 
    }); 
});