在Facebook Dialog Popup中渲染FBML

时间:2010-08-18 15:16:40

标签: facebook fbml fbjs

我正在Facebook页面上工作,其中有一张个人资料图片表。点击这些图片,我正在使用Facebook对话框在弹出窗口中显示名称,图片和说明。

该名称存储在<img> name属性中。 说明存储在<img> title属性中。 img src存储在<img> src属性中。

所以onclick,所有这些数据都是从点击的图像中收集的,应该在对话框中吐出。

问题是我无法获得渲染FBML的对话框,它只是将其显示为纯文本。

这是FBJS的一部分:

function showDialog(element) {
    var img_src = element.getFirstChild().getSrc();
    var name = element.getFirstChild().getName();
    var desc = element.getFirstChild().getTitle();
    var msg = '<img src="' + img_src + '" width="160" alt="' + name + '"> ' + desc;
    new Dialog().showMessage(name, msg);
}

和调用函数的FBML:

<a href="#" onclick="showDialog(this);"><img src="http://mydomain.com/path/to/my/image.jpg" border="0" name="myName" title="My Description" width="160"></a>

例如,在这种情况下,对话框将显示以下纯文本,而不是我试图显示的渲染FBML:

<img src="http://mydomain.com/path/to/my/image.jpg" width="160" alt="myName"> My Description

如何让对话框呈现FBML而不仅仅是纯文本?

1 个答案:

答案 0 :(得分:0)

Facebook开发者页面说“标题和内容可以是字符串或预渲染的FBML块”。我不太确定“预渲染”是什么意思。它可能是<fb:js-string>。不幸的是,由于Facebook的错误,我认为fb:js-string在静态FBML页面中不起作用(我认为)。