AddThis и Google Page Speed

Как бы я ни пытался загрузить AddThis (с помощью кнопок Google +1, Facebook «Отправить» и «Нравится» и Twitter по умолчанию), Google Page Speed по-прежнему предупреждает о:

  • Используйте кеширование браузера
  • Отложить синтаксический анализ Javascript

В каждом из этих элементов есть ссылки .html и .js на AddThis, Facebook, Google +1, Twitter и static.ak.fbcdn.net. Фактически, если вы запустите Google Page Speed ​​на этой странице: http://support.addthis.com/customer/portal/articles/381263-addthis-client-api-#rendering-js, вы увидите именно то, о чем я говорю. Первые два элемента, оба с оранжевыми значками серьезности (по крайней мере, для меня), — это именно то, что я упомянул выше.

Я безуспешно пытался добавить тег сценария в заголовок своей страницы, используя отсрочку (для IE) и асинхронность (для FF и Chrome):

<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=myUserId" defer="defer" async="async"></script>

Я пробовал использовать $.getScript():

$(document).ready(function () {
    $.getScript('http://s7.addthis.com/js/250/addthis_widget.js#async=1#username=myUserId', function(data, textStatus) {
        addthis.init();
    });
});

И я также попытался включить кеш ajax:

$(document).ready(function () {
    $.ajaxSetup({ cache: true });
    $.getScript('http://s7.addthis.com/js/250/addthis_widget.js#async=1#username=myUserId', function(data, textStatus) {
        addthis.init();
        $.ajaxSetup({ cache: false });
    });
});

Есть ли способ кэшировать, а также отложить загрузку AddThis и его внешних ссылок?


person StronglyTyped    schedule 16.03.2012    source источник
comment
вы получаете это предупреждение о низком приоритете - правильно?   -  person Aristos    schedule 16.03.2012
comment
Я повторно запустил его и получил Medium для парсинга JavaScript с отсрочкой, low для кеширования браузера Leverage. На моем сайте все наоборот. Несмотря на это, я понимаю, что на самом деле это не мешает производительности, но я все же хочу исправить это, если смогу. Я очень обсессивно-компульсивное расстройство по этому поводу.   -  person StronglyTyped    schedule 16.03.2012
comment
Вы не должны на самом деле что-то исправить, это то, о чем я говорю. Вы можете сделать трюк, вы можете загрузить addthis только тогда, когда вам нужно, но это не так просто. Вы можете сделать кнопку, которая выглядит так, будто addthis была загружена, но вы можете загружать ее только тогда, когда пользователь перемещается по ней... это не так просто. (не загружайте его в готовом виде, а загружайте его только в том случае, если он нужен пользователю, нажмите на него и т. д.)   -  person Aristos    schedule 16.03.2012


Ответы (2)


Используйте кеширование браузера

Ну это просто предложение установить больше времени кеша некоторых страниц. На своих страницах я получаю эти два предупреждения - оба из скрипта Google :). Это не так важно, потому что этот javascript полностью готов к кэшированию времени для javascript.

http://pagead2.googlesyndication.com/pagead/show_ads.js (60 minutes)
http://www.google-analytics.com/ga.js (2 hours)

Отложить синтаксический анализ Javascript

Что ж, это автоматическая программа, которая пытается понять, работает ли страница медленно, и предлагает некоторые мысли по ее улучшению. На данный момент это не точно.

Я просто запускаю его на известной странице, которая работает, находит и полна кеша и других трюков, и получаю те же сообщения.

Похоже на просто предложение и на самом деле не может знать, действительно ли этот javascript делает все, что он говорит, - по крайней мере, на данный момент. Например, на моей тестовой странице я загружаю javascript в конце страницы и снова получаю это сообщение. Если вы знаете, что загружаете javascript в правильное время с правильными флагами, не беспокойтесь об этом сообщении.

Проверьте отчет для этой страницы:

https://developers.google.com/pagespeed/#url=http_3A_2F_2Fstackoverflow.com_2Fquestions_2F9739031_2Faddthis-and-google-page-speed&mobile=false&rule=LeverageBrowserCaching

person Aristos    schedule 16.03.2012

<script type="text/javascript"charset="utf-8" src="/js/addthis.js#async=1"</script>

Это было решено на нашем сайте. http://www.nbhuntop.com Попробуйте сначала скопировать код addthis. и цитировать как src="/js/addthis.js#async=1"

person blw    schedule 29.04.2012