GearHead
@GearHead
Fullstack разработчик и предприниматель

Кнопка Google +1 на подгружаемом контенте?

Вот здесь описано, как добавлять к себе на сайт кнопку Google +1.


Однако, я столкнулся с трудностями там, где контент, в который она прилепляется, загружается через Ajax. В этом случае она показывается только один раз при первой загрузке (и то, только если воткнуть тег скрипта после тега кнопки), а после этого ничего.


Очевидно, при загрузке скрипт просматривает DOM на предмет нужных тегов, превращает их в кнопки и всё. Повторное включение скрипта не помогает.


Есть у кого-нибудь идеи, как это обойти?
  • Вопрос задан
  • 2864 просмотра
Решения вопроса 1
Tucker56
@Tucker56
После генрации контента нужно выполнить на странице:
gapi.plusone.go();
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
spmbt
@spmbt
Да, конечно, можно подгружать кнопку динамически. На примере юзерскрипта для Хабра можно разобрать, как это делается: spmbt.kodingen.com/habrahabr/habracut06.user.js, а при подгрузке увидеть, как это работает на Хабре.
function addJs
loadGPlus = function(n)
и ещё в этой версии не добавлено последнее дополнение Гугла: асинхронная загрузка (написать elemScript.async ='true'; после elemScript.src = url;). Но проверял — этот параметр действительно работает (при постзагрузке не будет иметь значения).

(Посмотрев на loadGPlus — я бы не сказал, что там надо запускать одну лишь gapi.plusone.go() — нужно вот эту функцию, а деталей не помню, но видно, что запускается .plusone.render().
Ответ написан
Ваш ответ на вопрос

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

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