При замедлении подключения к Facebook сайт загружается медленно - PullRequest
0 голосов
/ 29 июня 2018

У нас есть публичный сайт. Он содержит пиксельный скрипт Facebook. Тем не менее, в нашем регионе иногда скорость Facebook резко падает, тогда как остальная часть Интернета работает нормально. Когда это происходит, главная страница загружается очень медленно. Это скрипт, расположенный в верхней части страницы:

<script>
    !function(f,b,e,v,n,t,s)
    {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
    n.callMethod.apply(n,arguments):n.queue.push(arguments)};
    if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
    n.queue=[];t=b.createElement(e);t.async=!0;
    t.src=v;s=b.getElementsByTagName(e)[0];
    s.parentNode.insertBefore(t,s)}(window, document,'script',
    'https://connect.facebook.net/en_US/fbevents.js');
    fbq('init', '123456');
    fbq('track', 'PageView');
</script>

Насколько я знаю, этот скрипт должен загружаться асинхронно, но кажется, что это не так, потому что страница не может полностью отрисоваться, пока пиксель facebook не закончит свою работу. Я даже установил pagespeed EnableFilters defer_javascript в модуле pagepeed моего nginx, но это не помогает.

Что я могу сделать? Что я делаю не так?

1 Ответ

0 голосов
/ 29 июня 2018

Вы можете попробовать добавить сам тег тега в deferscript

<script defer>

Вы можете попробовать async, но я уверен, что он не работает на встроенном скрипте. Если вы загружаете файл javascript в facebook, то вы можете синхронизировать его тоже.

<script async>

Таким образом, вам не понадобится скорость страницы для отсрочки

...