FB.init和FB.ui在Canvas应用程序中的IE7中不起作用

时间:2012-05-04 13:38:04

标签: internet-explorer-7 facebook-javascript-sdk facebook-php-sdk

我正在谈论的网站就在这里:

https://www.facebook.com/kleenexau/app_295074103899059

如果你在流行的浏览器中运行它 - 它的工作原理。如果你在IE7中运行它,它会神奇地停止工作。到目前为止,我正在挖掘超过1天,并决定在这里发布这个问题。

我用来连接fb的代码是:

<div id="fb-root"></div>
<script src="//connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">
FB.init({
    appId: _FBAPPID, xfbml: true, status: true, cookie: true, oauth: true,
    channelUrl: "//sharethesoftness.kleenex.com.au/channel.php"
});
</script>

单击按钮时会触发此代码:

function jumpToChoose(data) {
    if(data) {
        window.location = _SITE + "choose.html";
    }
}

function startButtonClickHandler() {

    $("#startButton").fadeOut();
    $("#ajaxloader").fadeIn();

    FB.ui({
        method : "permissions.request",
        "perms" : 'user_hometown,friends_hometown,email' /*publish_stream,user_about_me,friends_about_me,*/
    }, jumpToChoose);
}

将“http”添加到channelUrl也不起作用。我不知道造成这个问题的原因。我尝试了很多解决方案,也是:http://blog.coderubik.com/2011/03/cookies-and-facebook-canvas-apps/

任何帮助将不胜感激。如果您需要任何其他详细信息,请与我们联系。

1 个答案:

答案 0 :(得分:0)

尝试在页面的最顶部添加此内容,看看它是否有效。

<?php
    header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
?>

IE似乎阻止您存储第三方Cookie,此标头可让您的Cookie在任何隐私设置中继续存在。