2010-12-31 2 views
0

Hi Я разрабатываю виджет, который будет размещен на внешнем веб-сайте. Весь плагин должен быть написан в javascript. Я haev искал здесь и там, но я не в состоянии сделать кнопку Войти facebook появляются на виджетеfacebook login button not rendering

Мой код выглядит следующим образом

var fbroot = document.createElement('div'); 
     fbroot.id = "fb-root"; 
     window.fbAsyncInit = function(){ 
      FB.init('xxxxxxxxxxxxxxxxxx', '/xd_receiver.htm');  
     }; 

    var contentRightDiv = document.createElement('div'); 
    contentRightDiv.id = "contentrightdiv"; 
    contentRightDiv.innerHTML = "<form><p><label>Sign in using <div id='socialmedialoginbtns'></div></label></p></form>"; 

var socialmedialoginbtns = document.getElementById('socialmedialoginbtns'); 
    socialmedialoginbtns.innerHTML = '<fb:login-button show-faces="false" width="200" max-rows="1"></fb:login-button>'; 
+1

прописали вы приложение на Facebook и получил AppId, и вы включили all.js ФБ? –

ответ

2

Если вы ставите тег XFBML на документе с JavaScript, используйте FB .XFBML.parse для рендеринга новых тегов.

0

Проверить Этот фрагмент кода ....

`<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" 
xmlns:fb="http://www.facebook.com/2008/fbml"> 
    <body> 
    <div id="fb-root"></div><script type="text/javascript">` 
     window.fbAsyncInit = function() { 
     FB.init({appId: 'Your_App_ID', 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); 
     }()); 
     window.fbAsyncInit = function() { 
     FB.init({appId: 'Your_App_ID', status: true, cookie: true, xfbml: true}); 

     /* All the events registered */ 
     FB.Event.subscribe('auth.login', function(response) { 
     // do something with response 
     getUserDetails(); 
     login(); 
     }); 
     FB.Event.subscribe('auth.logout', function(response) { 
     // do something with response 
     logout(); 
     }); 

     FB.getLoginStatus(function(response) { 
     if (response.session) { 
      // logged in and connected user, someone you know 
      login(); 
     } 
     }); 
    }; 

    </script> 
    <fb:login-button 
     autologoutlink="true" 
     perms="email,user_birthday,status_update,publish_stream"> 
    </fb:login-button> 
    </body> 
</html>