загружать поток URL-адресов facebook по запросу не будет работать

Я пытаюсь показать канал facebook с URL-адресом моего веб-сайта, чтобы показать пользователям, что нравится пользователям facebook на моей странице,

что я делаю это:

Импорт скрипта facebook

<div id="fb-root"></div>
<script>(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/es_LA/all.js#xfbml=1&appId=82743675977";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

Сделайте звонок:

function showFeed(){
        return '<div class="box"><h2><img src="http://www.google.com/s2/favicons?domain=keepourlinks.com"/> keepyourlinks </h2><div class="fb-activity" data-site="keepyourlinks.com" data-width="300" data-height="500" data-header="false" data-border-color="white" data-recommendations="false"></div></div>';
    }

    $(document).ready(function(){
        $('#show').click(function(){
            $('#feed').html(showFeed());

        });
    });

Можно протестировать здесь: http://jsfiddle.net/7cPDK/6/

Есть идеи, как этого добиться?

PD: мне нравится делать это так (загружать по запросу: не загружать при загрузке страницы и показывать по запросу)


person Toni Michel Caubet    schedule 12.01.2012    source источник
comment
Просмотрите содержимое div с идентификатором fb-root (например, добавив css, см. этот пример). Я думаю, что это сообщение об ошибке от facebook.   -  person scessor    schedule 12.01.2012
comment
ага.. странно.. есть предложения?   -  person Toni Michel Caubet    schedule 12.01.2012
comment
Извините, я не понимаю этот язык.   -  person scessor    schedule 12.01.2012


Ответы (1)


Я думаю, вы хотите переместить скрипт только в обработчик кликов:

1.) Вырезать скрипт из html:

<div id="fb-root"></div>
<a id="show" href="#">Show What facebook users share
<div id="feed"></div>

2.) Вставьте его в обработчик кликов и сначала добавьте удаление элемента с id facebook-jssdk, если он существует:

$('#show').click(function(){
    $('#facebook-jssdk').remove();
    (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/es_LA/all.js#xfbml=1&appId=82743675977";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));
    $('#feed').html(showFeed());
});

Также см. этот пример.

person scessor    schedule 12.01.2012
comment
пожалуйста, попробуйте также дважды щелкнуть ссылку в вашем примере - person Toni Michel Caubet; 12.01.2012