0

これを解決しようとして髪を引き裂いています。my like ページは、facebook js sdk サンプルで使用されている正確なコードを使用して、ユーザーがそのページを気に入っているかどうかを確認します。これはすべてのデスクトップ ブラウザーで機能しますが、iPad では機能しません。空白の画面が表示されます。ページの上部にテキストを追加して、ページが読み込まれるかどうかを確認してみました。問題は fb.login のように見えますか?

<body>
    <div id="fb-root"></div>
    <script>
            // This js didnt work, update the reload href further down !!! var currentUrl = 'https://www.facebook.com/pages/Mosquito-Digital/186527884694190?id=186527884694190&sk=app_629434517084781';
  var likesPage = false;
  var addisPageId = 'xxxxxxxxx'; //got this from http://graph.facebook.com/pagename


  window.fbAsyncInit = function() {
    // init the FB JS SDK
    FB.init({
      appId      : 'xxxxxxxxxxx',                        // App ID from the app dashboard
      channelUrl : '//myurl.com/channel.html', // Channel file for x-domain comms
      status     : true,                                 // Check Facebook Login status
      xfbml      : true                                  // Look for social plugins on the page
    });
    FB.login(function(response) {
        if (response.authResponse) {

            FB.api('/me/likes?fields=id', function(response) {

                for (var i=0;i<response.data.length;i++) {
                    if(response.data[i].id == addisPageId) {
                        likesPage = true;
                        break;
                    }
                }
                if(likesPage) {
                    window.location = '/continuepage.aspx';
                    //document.getElementById("likePage").style.display = "inline";
                } else {
                    document.getElementById("container_notlike").style.display = "inline";
                }
            });
        } else {
            window.parent.location = "https://www.facebook.com/xxxxx";
            //document.getElementById("nologin").style.display = "inline";
        }
    }, {scope: 'user_likes'});
    // Additional initialization code such as adding Event Listeners goes here
  };

  // Load the SDK asynchronously
  (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_gb/all.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
    </script>

    <div id="container_notlike">
        <img src="/xxxxx/like-page-01.jpg" />
    </div>

    <div id="container_like">
    </div>
</body>
4

1 に答える 1

3

Mobile Safari で「ポップアップのブロック」が有効になっているかどうかを確認します。アクティブ化されている場合、FB.login は応答/ヒント/エラー/その他がなければ機能しません。

Mobile Safari でポップアップ ブロッカーを無効にする方法を説明します。

于 2013-07-30T08:37:07.163 に答える