2

我在网站上有一个 Facebook 应用程序,它通过 javascript sdk (FB.login()) 打开标准登录弹出窗口。代码非常简单和标准:

<script>
        window.fbAsyncInit = function() {
            window.tryInit = window.setInterval(function() {
                if (typeof FB !== 'undefined') {
                    console.log('FB loaded');
                    window.clearInterval(window.tryInit);
                    FB.init({
                        appId: ...,
                        channelUrl: ...,
                        status: true,
                        cookie: true,
                        xfbml: true
                    });
                } else {
                    console.log('FB not loaded yet');
                }
            }, 100);
        }

        (function(d, s, id) {
            var js, fjs = d.getElementsByTagName(s)[0];
            if (d.getElementById(id)) {return;}
            js = d.createElement(s); js.id = id;
            js.src = "//connect.facebook.net/en_US/all.js";
            fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));
    </script>
    <script src="//code.jquery.com/jquery-latest.min.js"></script>
    <script>
        jQuery(function($) {
            $('a#login').click(function() {
                FB.login(function(response) {
                    alert("OK");
                });
            });
        });

当我尝试在带有 Chrome 浏览器的 iPad 2 上使用登录功能时,它会打开一个新选项卡,尝试连接到 Facebook url (m.facebook.com/dialog/oauth ...),但这会导致空白页,可能是在发生某种错误之后。相同的链接可以在具有 Safari 浏览器的相同平板电脑以及台式机和智能手机上正常工作。

有没有其他人遇到过同样的问题?有什么建议吗?

感谢你们!

编辑:同样的问题发生在带有 Chrome 的 iphone4 上,但不是 Safari。

4

0 回答 0