Facebook комментирует iframe - обновление при отсутствии обновления страницы (например, AJAX) - PullRequest
0 голосов
/ 25 марта 2012

У меня есть веб-сайт, на котором нет обновлений страницы, когда посетитель переходит на другие страницы (по функциональности сайт похож на hotornot.com).

Я пытаюсь использовать комментарии на Facebook, которые мне удалось использовать для первой страницы, на которую попадает посетитель. Когда посетитель переходит на вторую страницу, я пытаюсь обновить поле комментариев, чтобы оно соответствовало следующей "странице".

Пожалуйста, смотрите мой код ниже:

<head>
    <script type="text/javascript">
        function facebookcomments() {
            fbdiv = document.getElementById("fbcm");
            fbdiv.innerHTML = '<div id="fb-root"></div>';
            (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&appId=343149849069221";
                fjs.parentNode.insertBefore(js, fjs);
            }(document, 'script', 'facebook-jssdk'));
            hard_url = "http://www.example.com/usernames/" + thisusername + "/" + thisitem;
            showcomments = document.getElementById("show_comments");
            showcomments.innerHTML = '<div id="fb-comments" class="fb-comments" data-href="' + hard_url + '" data-num-posts="2" data-width="470" mobile="false"></div>';
        }
    </script>
</head>
<body onload="facebookcomments();">

По сути, я генерирую уникальный URL-адрес для страницы при загрузке страницы и передаю его в сценарий комментариев Facebook. Затем эта функция заполняет комментарии div onload.

Я запускаю комментарии на facebook (); функция, когда кто-то нажимает, чтобы перейти к следующему элементу в списке воспроизведения. Я надеялся, что функция innerHTML просто поменяет текущий набор комментариев на соответствующий набор для новой «страницы», однако вместо этого он полностью исчезнет.

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 26 марта 2012

После добавления элемента Facebook на вашу страницу вам нужно позвонить FB.XFBML.parse ()

Добавьте вызов этой функции в последнюю строку вашей функции, и все будет в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...