Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Вывод количества комментариев вк (https://javascript.ru/forum/project/67499-vyvod-kolichestva-kommentariev-vk.html)

spinastr 21.02.2017 05:25

Вывод количества комментариев вк
 
Здравствуйте! Я в JS полный ноль, прошу помочь экспертов, честно сам пытался разобраться, наверно придётся переписывать код. Не знаю как.


<!-- Put this script tag to the <head> of your page -->
<script type="text/javascript" src="//vk.com/js/api/openapi.js?126"></script>

<script type="text/javascript">
VK.init({apiId: 123});
</script>

<!-- Put this div tag to the place, where the Comments block will be -->
<div id="vk_comments"></div>
<script type="text/javascript">
VK.Widgets.Comments("vk_comments", {norealtime: 0, autoPublish: 0, redesign: 1, limit: 15, width: "", attach: "*"});
</script>


Два js которые выводят количество комментариев.

/* Количество комментариев виджет VK */

VK.Api.call('widgets.getComments', 
{widget_api_id: "123", url: document.URL}, 
function(obj) {
document.getElementById('vk_count').innerHTML = '(' + obj.response.count + ')';
});
 /* ------- */


есть ещё такой, он в последней строчке немного другой

VK.Api.call('widgets.getComments', 
{widget_api_id: "1234567", url: document.URL}, 
function(obj) {
document.getElementById('vk_count').innerHTML = 'всего:' + obj.response.count;
});


Этот код выводит количество комментариев виджета вконтакте через блок div c id:

<div id="vk_count"></div>


Код полностью работает и первый и второй. Проверял на отдельно созданной странице html.

Проблема в том что, на самом сайте код js не работает или работает частично.
Сайт на Ucoz.
Чтобы отображалось количество нужно использовать два кода, один в футоре, другой вконце странице под виджитом комментариев.Если перейти на страницу по ссылке, то js не отображает количество, если обнавить то отображает. На других страницах сайта может вообще никак не работает.

В Службе поддержке вк ответили так

Похоже, код выполняется до того, как появляется нужный для вставки числа элемент. Так что нужно как-то отсрочить выполнение кода этого скрипта, тогда всё будет работать. ( ставил js в разные места, не помогло)

В Ucoz

Жду ответа.

P.S.

понимаю что написал полный лес и ошибка наверно в Ucoz системно. Есть ли другие варианты этого скрипта?


/* Количество комментариев виджет VK */

VK.Api.call('widgets.getComments', 
{widget_api_id: "123", url: document.URL}, 
function(obj) {
document.getElementById('vk_count').innerHTML = '(' + obj.response.count + ')';
});
 /* ------- */


Часовой пояс GMT +3, время: 00:58.