Некоторые из этих сервисов уже (разумно) предоставляют свои скрипты в асинхронном режиме, это просто объединяет их в более эффективный, организованный и понятный код.
(function(doc, script) ( var js, fjs = doc.getElementsByTagName(script)(0), frag = doc.createDocumentFragment(), add = function(url, id) ( if (doc.getElementById(id)) (return;) js = doc.createElement(script); js.src = url; id && (js.id = id); frag.appendChild( js ); ); // Google+ button add('https://apis.google.com/js/plusone.js'); // Facebook SDK add('//connect.facebook.net/en_US/all.js#xfbml=1&appId=200103733347528', 'facebook-jssdk'); // Twitter SDK add('//platform.twitter.com/widgets.js'); fjs.parentNode.insertBefore(frag, fjs); )(document, 'script'));
Я обнаружил, что это происходит через какой-то код сайта, и я точно забыл, кто это сделал изначально, но это похоже на Николаса Галлахера или Матиаса Байнса. Поправьте меня если я ошибаюсь.
Вам понадобится HTML-код, чтобы скрипты могли размещать свои данные:
Tweet