Отрисовка FBML во всплывающем окне диалогового окна Facebook

Я работаю на странице 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, а не просто текст?


person bimbom22    schedule 18.08.2010    source источник


Ответы (1)


На странице разработчика Facebook сказано, что «заголовок и контент могут быть либо строками, либо предварительно обработанными блоками FBML». Я не совсем уверен, что подразумевается под «предварительно обработанным». Это может быть <fb:js-string>. К сожалению, строка fb: js не работает на статических страницах FBML из-за ошибки Facebook (я думаю).

person Christian Lutz    schedule 23.09.2010
comment
Возможно, Ajax-запрос типа Ajax.FBML может сработать. Вы можете попробовать вставить ответ в свой диалог. - person Christian Lutz; 23.09.2010