0

Facebookを使用して、この特定のアプリケーションを使用するすべての友達を表示しています。これで、私のアプリケーションで、同じアプリケーションを使用している友達のプロフィール写真を表示できますが、クリックすると、プロフィール写真アプリケーションはそれぞれFacebookページにリダイレクトされます。クリックすると、Facebookページ以外の別のリンクにリダイレクトしたい。出来ますか ?どのように ?

私のコードは

<script>
FB.init({
    appId  : '********', //App ID
    channelUrl : 'http://www.***.in/', // Channel File
    status : true, 
    cookie : true,
    xfbml  : true 
});
FB.getLoginStatus(function(response) {
    if (response.session) {

        globaluserid=response.session["uid"];
        //fetching friends uids from 'friend' table. We are using FB.api syntax
        FB.api(
                {
                method: 'fql.query',
                query: 'SELECT uid1 FROM friend WHERE uid2='+globaluserid
                },
                function(response) {
                //once we get the response of above select query we are going to parse them
                for(i=0;i<response.length;i++)
                {
                //fetching name and square profile photo of each friends
                    FB.api(
                    {
                        method: 'fql.query',
                        query: 'SELECT name,pic_square,username FROM user WHERE uid='+response[i].uid1
                    },
                    function(response) {
                        //creating img tag with src from response and title as friend's name
                        htmlcontent='<img src='+response[0].pic_square+' title='+response[0].name+' alt='+response[0].username+' />';


                    }
                    );
                }
            }
        );
        } else {
            // no user session available, someone you dont know
            top.location.href="../kfb_login.php";
        }
    });
</script>
<div class="just_trying">
<div class="fb-login-button" data-show-faces="true" data-width="200" data-max-rows="1">    </div> </div>
4

1 に答える 1

1

あなたが提供したコード サンプルでは、​​FB.api は取得した情報に対して実際には何もしていません。変数に割り当てていhtmlcontentますが、この変数を使用してコンテンツを HTML の本文に挿入していません。表示される友人の写真のリストは、ログイン ボタン タグからのものです。data-show-faces="true"つまり、ログイン ボタンには、Facebook コードによってのみ生成されたFacepileが表示されます。

したがって、data-show-facesfalse に設定し、Javascript コードを次のように変更します。

function(response) {
  //creating img tag with src from response and title as friend's name
  htmlcontent = document.createElement('img');
  htmlcontent.src = response[0].pic_square;
  htmlcontent.title = response[0].name;
  htmlcontent.alt = response[0].username;
  document.getElementsByTagName('body')[0].appendChild(htmlcontent);
}

簡単にするために、jQuery を使用している場合は、次のように変更します。

function(response) {
  //creating img tag with src from response and title as friend's name
  htmlcontent = '<img src='+response[0].pic_square+' title='+response[0].name+' alt='+response[0].username+' />'
  $('body').append(htmlcontent);
}
于 2012-11-07T12:41:31.500 に答える