2009-10-08 2 views
1

Я пишу приложение Facebook iframe/Facebook Connect, и на одной из страниц есть многопользовательский селектор. Он отлично отображается в каждом браузере, который я пробовал (FF/Mac, Safari/Mac, IE8/Win), но вообще не отображается в IE7/Win. Я ждал и ждал (на случай, если он был просто медленным), и он так и не появился.fb: serverfbml not render in ie7

Вот мой код.

<fb:serverfbml style="width:750px;height:700px"> 
<script type="text/fbml"> 
<fb:fbml> 
<fb:request-form 
action="<? echo $invite_href; ?>" 
method="post" 
type="<? echo $app_name; ?>" 
content="<? echo htmlentities($content,ENT_COMPAT,'UTF-8'); ?>"> 
<div class="clearfix" style="padding-right:20px;" height="500" width="750"> 
<fb:multi-friend-selector 
    actiontext="Here are your friends who don't have <? echo $app_name; ?> yet. Invite your friends and let them help too - it's free!" 
    exclude_ids="<? echo $friends; ?>" /> 
</div> 
</fb:request-form> 
</fb:fbml> 
</script> 
</fb:serverfbml> 

Другие необходимые вещи (FeatureLoader.js и все, что) являются (должны быть) правильно включен, так как селектор друга и каждый фб тег я использую вокруг приложения отлично работает. Тег serverfbml - это ТОЛЬКО вещь, которая дает мне проблемы в IE7. У большинства людей есть проблема с рендерингом селектора с раздражающим ростом в 150 пикселей - я не могу найти никого другого, у кого проблемы с ним, а вовсе не на рендеринг.

+0

Я только начал возиться с FB сам; в документах упоминается, что рендеринг XFBML должен использовать отдельные теги закрытия '' вместо короткой формы '', возможно, это проблема: ' ' – devstuff

ответ

0

Вы используете IE Tester для тестирования IE6? Если это не удается выполнить, это ошибка IE Tester.

1

Вам не нужны закрывающие теги, потому что вы визуализируете FBML insdie тег serverfbml, а не xfbml. Еще одна вещь, которую я заметил, заключается в том, что вы передаете в нее переменные PHP, в то время как я уверен, что Facebook удаляет все ваши php изнутри fbml сервера, но я могу ошибаться.

Daniel

0

Facebook поощряет разработчиков, чтобы переключиться на запросы 2.0. FBML устарел, и поэтому зависимость от fb: serverFbml, скорее всего, будет прекращена в какой-то момент в этом году. К счастью, существует более простой способ сделать это с помощью JavaScript SDK, и он даже работает на веб-сайтах.

FB.ui ({method: 'apprequests', ...});

Подробнее об использовании этого здесь: http://af-design.com/blog/2011/02/17/using-facebook-requests-to-promote-a-website/