Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
<a href="https://twitter.com/share" class="twitter-share-button" data-lang="ru">Твитнуть</a>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>HTML</title>
</head>
<body>
<a data-lang="ru">data-lang</a>
</body>
</html>
<a data-lang="ru">data-lang</a>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>HTML</title>
</head>
<body>
<a data-lang="ru">data-lang</a>
</body>
</html>
<a data-lang="ru">data-lang</a>
<!DOCTYPE html>
<html>
<head>
<title>HTML</title>
</head>
<body>
<a data-lang="ru">data-lang</a>
</body>
</html>
// Creating scripts on page
x = d.getElementsByTagName(s)[0];
x.parentNode.insertBefore(o,x);
document.getElementsByTagName('head')[0].appendChild(script);
document.body.appendChild(script);
// Creating scripts on page
x = d.getElementsByTagName(s)[0];
x.parentNode.insertBefore(o,x);
document.getElementsByTagName('script')[0].appendChild(script);
x.parentNode.insertBefore(o,x);
на странице может не быть ни head, ни body, и тогда скрипт упадёт.
<html><head></head><body>
</body></html>
Например, Twitter поменял уже ссылку, старая twitter.com/share, а новая twitter.com/intent/tweetПочему же вы тогда в своём коде используете twitter.com/share?
Зато Google единственный кто использует асинхронную загрузку javascript, при помощи атрибута asyncVK тоже может грузиться асинхронно.
Почему же вы тогда в своём коде используете twitter.com/share?
<a href="https://twitter.com/share" class="twitter-share-button">Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
VK тоже может грузиться асинхронноне спорю.
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
po.async = true;
Кнопки социальных сетей, HTML 5, атрибут data и асинхронная загрузка javascript