2010-08-18 3 views
1

Я работаю на странице facebook, где есть таблица изображений профиля. Onclick для каждого из этих изображений, я использую диалог facebook, чтобы показать имя, изображение и описание во всплывающем окне.Render FBML в Facebook Dialog Popup

Имя хранится в атрибуте . Описание хранится в атрибуте <img>title. img src хранится в атрибуте <img>src.

Итак, все эти данные собраны из изображения, на которое было нажато, и должны быть выплющены в диалоговом окне.

Проблема в том, что я не могу получить диалог для визуализации 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 

Как я могу получить диалог для визуализации FBM L, а не просто текст?

ответ

0

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

+0

Возможно, Ajax-запрос типа Ajax.FBML может работать. Вы можете попробовать вставить ответ в свой диалог. –