0

我的代码有问题,该代码旨在创建 Facebook Connect 登录弹出窗口。在下面的代码中,如果我在准备好的文档中包含点击事件,则它会触发创建 2 个弹出窗口,但如果我将它留在准备好的文档之外,则它无法创建任何弹出窗口。有人可以建议吗?

<script type="text/javascript">

            $(document).ready(function () {

                window.FB.init({ appId: 'xxx', status: true, cookie: true, xfbml: true });

            });

            $('#fbLogin').click(function () {
                window.FB.login(function (response) {
                    if (response.status == 'connected') {
                        window.location.href = 'redirecturl';
                    }
                }, { perms: 'email' });
            });

        </script>
       <fb:login-button autologoutlink="false" perms="email" id="fbLogin">

       </fb:login-button>
4

1 回答 1

0
  • 点击fb:login-button会弹出登录对话框。
  • 您的绑定#fblogin将打开第二个对话框

您需要选择其中之一fb:login-buttonFB.login不选择两者。

如果您需要在用户登录后重定向页面,只需删除FB.login调用并订阅(FB.Event.subscribeauth.statusChange事件以检查登录状态。

FB.Event.subscribe('auth.statusChange', function(response){
  if (response.status == 'connected') {
    window.location.href = 'redirecturl';
  }
});
于 2012-05-07T19:45:48.243 回答