0

ユーザーのサインインまたはサイトへのサインアップに使用するモーダルがあります。Facebookからの参加も許可します。

現在、私のサイトでネイティブ セッションが期限切れになった場合、明確に指示されない限り、Facebook を介してユーザーを自動的にサインインさせたくありません。つまり、モーダルをトリガーするリンクをクリックすると、サインインがトリガーされます。 .

私が抱えている問題は、モーダルがまだ起動する (そしてすぐに非表示になる) ことであり、ユーザーが Facebook 経由で接続している場合にモーダル トリガーを削除できる方法があるかどうか疑問に思っていました。モーダルトリガーは、サインインするだけです。

私はこれを無駄にしようとしました。

FB.getLoginStatus(function(response) {
    if (response.status === 'connected') {
        $('#sidebar-auth-modal-trigger').off('click.bs.modal.data-api');
        $(document).off('click.bs.modal.data-api', '#sidebar-auth-modal-trigger');

        ...

    }
});
4

1 に答える 1

1

データ属性を使用していると述べたので、それをhtmlから削除してください。

次のように、FB ステータスが必要な場合にのみモーダルをトリガーしてみてください (FB ログイン ステータスが何をしているのかはよくわかりません。すべてのコードがそこにあるわけではありませんが、これでうまくいくはずです)。

FB.getLoginStatus(function(response) {
    if (response.status === 'connected') {
       //dont call your modal here if you dont want it

    } else {
        //call your modal
        $('#myModal').modal();
    } 

});

$('#sidebar-auth-modal-trigger').on('click', FB.getLoginStatus);

これで、Facebook のステータスが希望どおりの場合にのみモーダルが呼び出され、そうでない場合は呼び出されません。

于 2013-11-08T14:47:00.773 に答える