Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE与Facebook共享时出错-并且没有';不要关窗户_Javascript_Facebook_Feed - Fatal编程技术网

Javascript IE与Facebook共享时出错-并且没有';不要关窗户

Javascript IE与Facebook共享时出错-并且没有';不要关窗户,javascript,facebook,feed,Javascript,Facebook,Feed,我正在使用Facebook上一些几乎没有修改过的示例代码发布到用户的提要: <a class="facebook popup" href="" title="Post to Facebook" onclick="FB.ui( { method: 'feed', name: 'Feedback from Customer in x', link: 'http://localhost/User/Feedback.aspx',

我正在使用Facebook上一些几乎没有修改过的示例代码发布到用户的提要:

<a class="facebook popup" 
href="" 
title="Post to Facebook"
onclick="FB.ui(
    {
        method: 'feed',
        name: 'Feedback from Customer in x',
        link: 'http://localhost/User/Feedback.aspx',
        picture: 'http://localhost/Images/Picture.jpg',
        caption: 'Caption goes here.',
        description: 'Description goes here.'
    }
);
return false;">
<img alt="Post to Facebook" src="../Images/feedback-fb.png"/>

但是我在IE(9)中发现了一些问题

  • 脚本错误:
    SCRIPT70:all.js的权限被拒绝?\u1316190103502,第22行字符4250。
  • 当用户按“取消”或“发布”时,对话框不会关闭

  • 如果有什么不同的话,大多数浏览器都会使用“对话框”显示类型,在这种情况下,IE出于某种原因会使用“弹出”显示类型。如果我强迫它使用显示:“弹出窗口”,那么(至少)Chrome似乎可以正常工作。任何帮助都将不胜感激

    对于这个特定的问题,我可以通过配置服务器来返回头(这是nginx语法),从而在IE9中消除错误:

    您可以对其他服务器(如apache等)执行相同的操作,或者从服务器脚本返回它。我没有这样做,但我相信php中的语法是:

    header('P3P: CP=HONK');
    

    这是一个公开的垫片,因为实现P3P还有很多。然而,我们只是想看看需要付出什么最小的努力才能消除这个错误,而上面的方法是有效的。

    我有两个问题。首先是FB中的一个IE bug,它有一个解决方法(这里描述的就是这个)。错误:。解决方法:

    FB.UIServer.setLoadedNode = function (a, b) { FB.UIServer._loadedNodes[a.id] = b; }; // IE hack to correct FB bug 20168
    
    从现在开始发现


    但我的FB应用程序域也有问题-我必须将FB应用程序配置为指向我正在使用的特定子域(x.domainname.com),否则在IE中,当我调用
    FB.login
    时,我收到了一个权限拒绝错误和另一个空白屏幕。

    8小时后,你会相信吗。。我得到了同样的结果;)我尝试过channelsUrl的东西,swf对象wmode:“透明”,等等。我在Facebook的新错误跟踪系统中报告了这个错误,这里:似乎对我不起作用。我将这个标题添加到channel.html(make it.aspx,这样我就可以将标题添加到该页面),但是没有bean。很高兴它有帮助。顺便说一句,FaceBook说我没有提供足够的复制,并且已经关闭了这个漏洞。考虑到其他人可以很好地复制,我不知道我应该提供什么。我个人不欢迎我们新的Facebook API霸主。
    FB.UIServer.setLoadedNode = function (a, b) { FB.UIServer._loadedNodes[a.id] = b; }; // IE hack to correct FB bug 20168