@MikkiMouse

Как загрузить виджет одноклассников через jQuery?

Добрый день, хочу чтобы работал следующий алгоритм:
1. Кликаю по div'у
2. В нужный div добавляется виджет одноклассников

С кликом и добавлением html разобрался, а как заставить виджет отображаться не могу понять.

Код виджета следующий (id поменял):
<div id="ok_group_widget"></div>
<script>
!function (d, id, did, st) {
  var js = d.createElement("script");
  js.src = "https://connect.ok.ru/connect.js";
  js.onload = js.onreadystatechange = function () {
  if (!this.readyState || this.readyState == "loaded" || this.readyState == "complete") {
    if (!this.executed) {
      this.executed = true;
      setTimeout(function () {
        OK.CONNECT.insertGroupWidget(id,did,st);
      }, 0);
    }
  }}
  d.documentElement.appendChild(js);
}(document,"ok_group_widget","00000000000001","{width:280,height:300}");
</script>


Я пытался сделать так:
container.html('<div id="ok_group_widget"></div>');
$.globalEval('!function (d, id, did, st) {  var js = d.createElement("script");  js.src = "https://connect.ok.ru/connect.js";  js.onload = js.onreadystatechange = function () {  if (!this.readyState || this.readyState == "loaded" || this.readyState == "complete") {    if (!this.executed) {      this.executed = true;      setTimeout(function () {        OK.CONNECT.insertGroupWidget(id,did,st);      }, 0);    }  }}  d.documentElement.appendChild(js);}(document,"ok_group_widget","00000000000001","{width:280,height:300}");');

но не выходит, html добавляется, но видимо код в eval не выполняется и виджет не отображается =(
Как можно решить проблему?
  • Вопрос задан
  • 474 просмотра
Решения вопроса 1
@MikkiMouse Автор вопроса
Сделал загрузку черех ajax:
$.ajax({
					url: "http://server/ok_widget.html",
					cache: true,
					success: function(html){
						container.html(html);
					}
				});

В файле ok_widget.html код виджета одноклассников.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы