1

サイトにいいねボタンがあります。ユーザーが過去にクリックしたかどうかを確認できますか? ユーザーが自分のウェブサイトから facebook にログインしたくないので、ユーザーに許可を求めずに確認したいのです。それは可能ですか?どうすればそれを行うことができますか?

4

1 に答える 1

0

これは、ユーザーがページのいいねボタンをクリックしたときに Cookie を保存することで実現できると思います。Facebook にはいくつかのイベント コールバックがあり、詳細についてはこちらを参照してください。

https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

コードは次のようになります。

FB.Event.subscribe('edge.create', function(response) {
    if(response) {
        var name = 'UserLikesMyPage'
        var date = new Date();
        date.setTime(date.getTime() + (14 * 24 * 60 * 60 * 1000));
        var expires = '; expires=' + date.toGMTString();
        document.cookie = name + '=true' + expires + '; path=/';
    }
}

この Cookie が既に設定されているかどうかを確認できます。

if (document.cookie.indexOf('UserLikesMyPage') >= 0) {
    alert('I already like your page')
};

また、ユーザーがあなたのページを気に入らない場合は、Cookie を削除することを忘れないでください。edge.removeこれはイベントでわかります

于 2013-05-29T11:50:47.347 に答える