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
Facebook FB.ui对话框(iframe)不可见_Facebook_Dialog_Fb.ui - Fatal编程技术网

Facebook FB.ui对话框(iframe)不可见

Facebook FB.ui对话框(iframe)不可见,facebook,dialog,fb.ui,Facebook,Dialog,Fb.ui,我正在尝试将stream.publish功能添加到我的web应用程序中,但“提要”对话框有问题 我的代码如下: var obj = { method: 'feed', display: 'iframe', name: data.name, link: data.link, picture: data.picture, caption: d

我正在尝试将stream.publish功能添加到我的web应用程序中,但“提要”对话框有问题

我的代码如下:

        var obj = {
            method: 'feed',
            display: 'iframe',
            name: data.name,
            link: data.link,
            picture: data.picture,
            caption: data.name,
            description: data.description,
            message: data.message,
            actions: [{
                name: data.actions.name,
                link: data.actions.link
            }],
            user_message_prompt: ''
        }

        var resp = FB.ui(obj, function(response) {
            alert("DONE");
        });
我可以让它工作,如果我使用'弹出'而不是'iframe',但这不是我想要的

你知道为什么feed没有出现在我的屏幕上吗

谢谢

如中所述

如果指定
iframe
,则必须具有有效的
access\u令牌。要获取有效的
访问\u令牌
,请参阅

更新:
似乎还有其他两种说法可能导致这种行为:

iframe
:在当前页面上的lightbox iframe中显示对话框。由于存在点击劫持的风险,这只允许在某些对话框中使用,并且需要您传递有效的
access\u令牌

还有这个

在Facebook画布页面上,对话框仅支持iframe应用程序

页面选项卡中也有关于“发送对话框”不使用as
iframe
的打开信息(可能相关,也可能无关)

更新2:
实际上,在我所有的应用程序中,我都使用了用户
FB.ui
,但没有指定
display
,因为在对话框
iframe
实现时,大多数情况下都无法正常工作,没有它,Facebook JS-SDK试图使用最合适的显示模式

更新3:

OP在另一个DOM元素中隐藏了
fb root
,导致对话框不可见(如他在评论中所述)

我有一个有效的访问令牌,如果我也将它添加到obj对象中,则不会发生任何事情。还有其他想法吗?事实上,我在另一个div中添加了fb root div,显示:none,因此iframe隐藏在它后面:$@AlbertoSheinfeld,我已经用您评论中的信息更新了我的答案。不要接受它,我们只是把它作为一个提醒…你好。你认为你能评论一下吗?如何设置父级--是否总是fb根?我需要获取访问令牌吗?如果我这样做,更多的问题是:你在哪里使用这个代码?画布应用程序、站点、页面选项卡?