Мне нужно загружать несколько ящиков комментариев Facebook на странице всякий раз, когда пользователь выполняет определенное действие с помощью JQuery.(http://developers.facebook.com/docs/reference/plugins/comments/)
Я получил бы его работать, если бы я должен был загрузить все поля комментариев одновременно, но это плохая практика программирования.
Когда я пытаюсь загрузить комментарии последовательно, первыйкомментарий появляется, но все последующие не загружаются.
Я создал тестовый скрипт для демонстрации.
Страница 1:
<script src='http://code.jquery.com/jquery-1.6.4.min.js'></script>
<div id='A' align='center' onclick='clickA();'><strong>AAAAAAAAAAAAAAAAAAAAA</strong></div>
<div id='B' align='center' onclick='clickB();'><strong>BBBBBBBBBBBBBBBBBBBBB</strong></div>
<div id='C' align='center' onclick='clickC();'><strong>CCCCCCCCCCCCCCCCCCCCC</strong></div>
<div id='ALL' align='center' onclick='load_all();'><strong>Load ALL</strong></div>
<script>
var facebook_comments_page = 'http://localhost/test2.html';
function clickA(){
$('#A').load( facebook_comments_page);
}
function clickB(){
$('#B').load(facebook_comments_page);
}
function clickC(){
$('#A').empty();//not working to remove the dom
$('#A').detach();//not working to remove the dom
$('#A').remove();//not working to remove the dom
$('#C').load(facebook_comments_page );
}
function load_all(){
$('#A').load(facebook_comments_page);
$('#B').load(facebook_comments_page);
$('#C').load(facebook_comments_page);
}
</script>
Страница 2 - фактический FacebookСтраница комментариев (test2.html):
<script class='fb-comments'>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = '//connect.facebook.net/en_US/all.js#xfbml=1';
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class='fb-comments' data-href='http://example.com' data-num-posts='2' data-width='470' ></div>
В этом примере, если вы изначально нажимаете AAAA, BBBB или CCCC, страница комментариев Facebook загружается, но если вы нажимаете любую из оставшихся, они неОднако, если вы сначала выберете Load ALL, затем загрузите все три.
С CCC я подумал, что если уничтожить содержимое AAA, то будет загружен CCC. Однако это не так. Я думаю, как-то JQueryубивает содержимое сценария при последующих вызовах.
Любая помощь будет принята с благодарностью!