我正在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而不仅仅是纯文本?
答案 0 :(得分:0)
Facebook开发者页面说“标题和内容可以是字符串或预渲染的FBML块”。我不太确定“预渲染”是什么意思。它可能是<fb:js-string>
。不幸的是,由于Facebook的错误,我认为fb:js-string在静态FBML页面中不起作用(我认为)。