На сайте мы запускаем простую кнопку Twitter, которая отлично работает 90% времени. Иногда инициализация завершается с ошибкой: Uncaught TypeError: Cannot call method 'load' of undefined
.
Это скрипт, который выполняет инициализацию Twitter:
<script type="text/javascript">
//<![CDATA[
(function() {
var twitterScriptTag = document.createElement('script');
twitterScriptTag.type = 'text/javascript';
twitterScriptTag.async = true;
twitterScriptTag.src = document.location.protocol + '//platform.twitter.com/widgets.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(twitterScriptTag, s);
})();
//]]>
</script>
Кто-нибудь может дать подсказку, почему это происходит?
ОБНОВЛЕНИЕ: После установки async = false
я получаю следующую ошибку:
'twttr.widgets' is Null or no object
РЕШЕНИЕ: Я загружаю некоторые вещи через AJAX в $ (document) .ready (). Проблема в том, что, когда содержимое AJAX загружается быстрее, чем выполняется инициализация Twitter, происходит сбой.