JavaScript SDK (FB.login()) を介して標準のログイン ポップアップを開く Web サイトに Facebook アプリケーションがあります。コードは非常にシンプルで標準的です。
<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 では発生していません。