6

2009 年 4 月 8 日更新 - 新しい週が始まりましたが、Facebook フォーラムからの回答も進捗もありません。そこには1つの応答がありません。これはかなり残念です。また、この質問に賞金をかける方法もわかりませんが、この問題を解決したいと本当に思っています.


これが以前に投稿されたかどうかを確認するために多くの投稿を調べましたが、そうではありませんでした。短いバージョンは次のとおりです。

サンプルの FB Connect チュートリアル (v1) を実行していますが、Win7 の IE8 で動作させることができません。Win7 の FF3 で期待どおりに動作します。

長いバージョン:

コンテンツをほとんどコピーして貼り付けていたので、うまくいかないことに驚きました。私は alert() javascript 呼び出しで少しスキップしたので、パーサーがそれに到達しているかどうかを確認するためにそれを入れました。次のコードを入れました。

[my raw html]
Or use, <fb:login-button length="long" onlogin="alert('yo!!!');"></fb:login-button>
[/my raw html]

IE8 でアラートが表示されません。FFで動作します。

update_user_box() の呼び出しに戻すと、HTML は次のようになります。

Or use, <fb:login-button length="long" onlogin="update_user_box();"></fb:login-button>

<script type="text/javascript">
    function update_user_box() {
        var user_box = document.getElementById("user");
        user_box.innerHTML =
            "<span>"
            + "<fb:profile-pic uid='loggedinuser' facebook-logo='true'></fb:profile_pic>"
            + "Welcome, <fb:name uid='loggedinuser' useyou='false'></fb:name>."
            + "You are signed in."
            + "</span>"

        FB.XFBML.Host.parseDomTree();
    }

    FB.init("23e24c73feed7ca0f6afd876575842de", "../../Connect/xd_receiver.htm", { "ifUserConnected": update_user_box });
</script>

繰り返しますが、これはFF3で問題なく機能します。私の写真が表示され、すべてが表示されます。実際、完全な作業状況よりも、FF3 で動作したことに腹を立てます。

IE8 で目撃された動作は次のとおりです。

  1. FBConnect ボタンをクリックすると。JavaScript ウィンドウがポップアップし、正しいログオン ページがロードされます。

  2. フォーカスがメイン ウィンドウ (アプリのあるウィンドウ) に戻ります。

  3. IE8 のメイン ウィンドウ ([接続] ボタンをクリックしたウィンドウ) に、facebook のログオン ページが表示されます。

  4. 認証情報を FB JavaScript ウィンドウに入力すると、そのページの空白のドキュメント URL が読み込まれます: http://localhost:55994/Connect/xd_receiver.htm?fb_login&fname=_opener&session=%7B%22session_key%22%3A%223 .A4DpHk4nrKHooB7K_Q6EiA__.86400.1238796000-623225%22%2C%22uid%22%3A%22623225%22%2C%22expires%22%3A1238796000%2C%22secret%22%3A%22HtjtJS_xg8dX7TR7lLggew__%22%2C%22sig%22%3A%22ae12c0f98d4567612b70861314d42fbb %22%7D

そのページのソースを表示:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
    <script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/XdCommReceiver.js" type="text/javascript"></script>
</body>
</html>

5. そのウィンドウを閉じて資格情報をアプリ ウィンドウに入力すると、FBConnect ボタンでページがリロードされます。

私が言ったように、FF3 では期待どおりの動作を得ていますが、IE8 ではそうではありません。IE8の互換モードも試してみましたがダメでした。何が起こっているかについて手がかりを持っている人はいますか?

私の HTML タグは次のようになります。

だから私はそれが問題ではないことを知っています。

4

5 に答える 5

7

同じ問題が発生しました-メインページにHTML名前空間が設定されていることを確認してください:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">

http://forum.developers.facebook.com/viewtopic.php?id=23412

また、nullエラーを防ぐためにブートストラップを実行しました。

FB.Bootstrap.requireFeatures(["Connect"], function() 
{
    FB.init("--api-key--","domain/xd_receiver.htm");
    FB.Connect.ifUserConnected(your_function_here);
});
于 2009-04-13T21:40:04.070 に答える
1

IE8 と Facebook Connect シンプル。

Facebook Connect サイトで開発中の Facebook ウィジェットが読み込まれませんでした

もちろん、IE8でJavascriptを有効にする必要があります(これに関する他の多くの情報)。

まだ行きません。

次に、上記のダレント・ニュートンによる投稿....

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">

トリックを行います!ありがとうダレン。

于 2010-05-25T11:13:43.683 に答える
0

私は非常によく似た問題を抱えています。IE7-8 Win7では、「ページを表示できません」と表示されます。ポップアップは空です。

Fiddlerでは、CONNECT(ホスト)への安全な呼び出しは渡されません。

Facebook JavascriptSDKAPIをAPI.ui/stream.Publishで使用しています。2つのアプリケーションを設定しました。1つはフランス語ドメイン用、もう1つは英語ドメイン用です。英語のドメインは正しく応答しますが、フランス語のドメインは応答しません。両方の接続URL/ベースドメインが正しく設定されました。

これは、他のすべてのブラウザとOSの組み合わせで機能します。

fb xmlnsを試しましたが、結果がありません。

于 2010-11-08T16:23:26.710 に答える
0

Facebookを新しいJavascriptSDK認証方法で動作させるのに問題がありました-ChromeとFFでは正常に動作しましたが、IE8.0では動作しませんでした

いじくり回した後、私はそれ <html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">が必要であることに気づきました。

また、アプリケーション設定を編集する必要がありました。接続URLを http://XXX.example.com.org:8006/XXXX/のよう に変更し、ベースドメインを次のように変更します。 example.com

注:ローカルマシンでテストしたため、ベースドメインをIPアドレスに設定しても機能しませんでした。レンダリング方法:iframe

参照用のJavascript:

<script src="http://connect.facebook.net/en_US/all.js"></script>

<script>

  FB.init({appId: '{{facebook_app_id}}', status: true, cookie: true, xfbml: true});
  FB.Event.subscribe('auth.sessionChange', function(response) {
    if (response.session) {
      // A user has logged in, and a new cookie has been saved
        window.location.reload();
    } else {
        // The user has logged out, and the cookie has been cleared
    }
  });

</script>
于 2010-08-03T16:02:25.820 に答える
0

少し遅れましたが、これは私の皮を救いました!! これが他の人に役立つことを願っています!

IE8、IE9 でのログイン時に FB Connect に空白のポップアップが表示される

カスタム チャネル URL を使用する

1.FB.init セッションに channelUrl パラメータを追加します。

FB.init({ appId : 'YOUR APP ID', status : true, cookie : true, xfbml : true, channelUrl: "http://yourdomainname/fbtest/channel.html" //このファイルを Web サイトに追加します。
} );

2.channel.html ファイルの内容は、次の 1 行である必要があります。

3.あなたのFBログインをテストしてください...お楽しみください...

完全なフォーラム スレッドについては、http://forum.developers.facebook.net...を参照してください。

于 2011-06-21T19:31:49.850 に答える