Обновление информации в кнопке like Вконтакте

Существует страница. При первой загрузке AJAX'ом заполняются все необходимые данные и инициализируется VK.Share.button. В дальнейшем информация обновляется, а информация шаринга информации в кнопке остается той, которая была при инициализации.

В связи с этим вопрос: каким образом можно провести инициализацию заного? Замечательно — с помощью какого-то call вызова вконтакта. Или полностью грохнуть все инициализированные скрипты с содержимым с повторной инициализацией.

Схема работы тестовой страницы:
div class="..." onclick="return VK.Share.click(0, this);">img src="somepicrure.png" alt="">/div> — по клику на этот кастомный слой вызывается окно шаринга

div id="vk_share_button">1/div> — невидимая кнопка. В нее ширинг скрипты Вконтакта заполняют все свои параметры.

function vk_delay() {
$(document).ready(function() {
// получение каких-то параметров со страницы
document.getElementById('vk_share_button').innerHTML = VK.Share.button({
url: "ссылка с параметрами"+temp+temp2,
title: ""+temp+temp2+"",
description: "...",
image: '...',
noparse: 'true'
},{
type: "button",
text: "Сохранить",
title: "..."
});
});

}

function create_vk() { setTimeout("vk_delay()", 1000); } // костыльчик, ибо вк инициализируется раньше, чем ajax выдаст данные на страницу
create_vk();


Задача: каким-то образом параллельно с ajax обновлением обновлять кнопку шаринга под новые значения temp и temp2

Курение мануалов ничего не дало. Повторный вызов функции отрисовки кнопки ни к чему не приводило, как и с предварительной очисткой содержимого слоя vk_share_button.
  • Вопрос задан
  • 3295 просмотров
Пригласить эксперта
Ответы на вопрос 1
@milar Автор вопроса
Вопрос так и не решен. Еще один вариант костыль-решения: вставить лайкокнопку на отдельную страницу и отображать ее ифреймом. При ajax-обновлении вызывать reload ифрейма. Но решение ужасно костыльное и создает проблемы со слоями, при применении слоев поверх вызванного iframe
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы