2

非常に関連性があります:

http://code.google.com/p/facebook-actionscript-api/issues/detail?id=256

具体的には:

ボタンのクリックなどのユーザーアクションによってトリガーされない限り、ポップアップがブロックされることを発見しました。したがって、この問題の解決策は、MouseEvent.CLICKハンドラーからのみFacebook.login()を呼び出すことです。


しかし、私のWebサイトでは、これが私が行っていることであり、ポップアップはまだブロックされています。

$('#fb-login-button').click(function () {
    FB.logout();
    setTimeout(function() {
        FB.login();
    }, 2000);
});

FB.login()クリックハンドラーで直接呼び出されるのではなく、setTimeout()関数によって呼び出されるためですか?

助言がありますか?

4

1 に答える 1

2

はい、setTimeout呼び出しのため、ブラウザはポップアップをブロックします。

setTimeoutを削除しても、ブロックされません。

素晴らしい説明はここにあります: https ://stackoverflow.com/a/7060302/384442

于 2012-10-07T04:37:20.557 に答える