Я сейчас пытаюсь динамически создать кнопку твита с функцией горизонтального отсчета:
JavaScript
var twitter = document.createElement('a');
twitter.setAttribute('href', 'http://twitter.com/share');
twitter.setAttribute('class', 'twitter-share-button twitter-tweet');
twitter.setAttribute('data-url','http://mindcloud.co.uk/idea/?idea=' + this.id);
twitter.setAttribute('data-count', 'horizontal');
twitter.setAttribute('data-via', 'jtbrowncouk');
twitter.style.top = '20px';
twitter.style.left = '300px';
twitter.innerHTML = "Tweet";
У меня проблема в том, что кнопка отображается как текстовая ссылка, а не как кнопка с полем горизонтального отсчета.
Я создал кнопку facebook таким же образом, которая работает правильно, однако, чтобы она работала, я использую следующее:
JavaScript
var facebook = document.createElement('fb:like');
facebook.setAttribute('id', 'like'+this.id);
facebook.setAttribute('href', 'http://mindcloud.co.uk/idea/?idea=' + this.id);
facebook.setAttribute('layout', 'button_count');
facebook.setAttribute('send', 'false');
facebook.setAttribute('width' , '300');
facebook.setAttribute('font', '');
facebook.setAttribute('show_faces', 'true');
facebook.style.top = '0px';
facebook.style.left = '300px';
с использованием следующего:
FB.XFBML.parse();
разобрать и нарисовать кнопку. FB.XFBML.parse()
прибывает из
http://connect.facebook.net/en_US/all.js
Когда я статически создаю кнопку Tweet внутри файла .html, она работает правильно. Я включил следующий скрипт в свою индексную страницу, где кнопка твита должна создаваться динамически:
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
Если вы видите, что я делаю неправильно, пожалуйста, сообщите мне!
Следующий скриншот дает наглядное объяснение того, что происходит с кнопкой твита!
Решение:
Теперь мне удалось решить проблему. Проблема, которую я себе представляю, заключается в том, что скрипт twitter работает под нагрузкой и не запускается повторно при создании элемента.
Использование следующего jQuery работает правильно!
$. GetScript ( "http://platform.twitter.com/widgets.js");