• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
Vasi.Ro

Vasi.Ro

Totul, mai ușor

  • Confidențialitate
  • Contact

Completare la articolul despre încărcarea asincronă a CSS-urilor

Scris pe 17 octombrie 2017 Lasă un comentariu

Acum cinci zile am scris despre încărcarea asincronă a CSS-urilor într-o pagină web. Nu doar că am scris, dar am și implementat metoda pe acest blog.

Toate bune, doar că pagina rămânea în pielea goală, fără CSS, pe anumite browsere. Pentru că, după cum era de așteptat, nu toate navigatoarele știu de <link rel=”preload”>.

Mozilla Firefox de pe Ubuntu și derivatele (ex: Linux Mint) nu știe ce-i aia. Chrome, în schimb, cunoaște. E a lu’ Google, iar Google vrea viteză. Interesant – sau nu – este că Google PageSpeed Insights nu a auzit de <link rel=”preload”>, dar cui îi mai pasă de PageSpeed Insights?

Fiindcă nu mi-am dat seama ce am omis, am citit documentația. Cele mai relevante informații le-am găsit aici. Așa am dat de un javascript care se pune fix după </noscript>. Despre acesta vorbesc:

<script>!function(e){"use strict";var t=function(t,n,r){function o(e){return i.body?e():void setTimeout(function(){o(e)})}function a(){d.addEventListener&&d.removeEventListener("load",a),d.media=r||"all"}var l,i=e.document,d=i.createElement("link");if(n)l=n;else{var s=(i.body||i.getElementsByTagName("head")[0]).childNodes;l=s[s.length-1]}var u=i.styleSheets;d.rel="stylesheet",d.href=t,d.media="only x",o(function(){l.parentNode.insertBefore(d,n?l:l.nextSibling)});var f=function(e){for(var t=d.href,n=u.length;n--;)if(u[n].href===t)return e();setTimeout(function(){f(e)})};return d.addEventListener&&d.addEventListener("load",a),d.onloadcssdefined=f,f(a),d};"undefined"!=typeof exports?exports.loadCSS=t:e.loadCSS=t}("undefined"!=typeof global?global:this),function(e){if(e.loadCSS){var t=loadCSS.relpreload={};if(t.support=function(){try{return e.document.createElement("link").relList.supports("preload")}catch(e){return!1}},t.poly=function(){for(var t=e.document.getElementsByTagName("link"),n=0;n<t.length;n++){var r=t[n];"preload"===r.rel&&"style"===r.getAttribute("as")&&(e.loadCSS(r.href,r,r.getAttribute("media")),r.rel=null)}},!t.support()){t.poly();var n=e.setInterval(t.poly,300);e.addEventListener&&e.addEventListener("load",function(){t.poly(),e.clearInterval(n)}),e.attachEvent&&e.attachEvent("onload",function(){e.clearInterval(n)})}}}(this);</script>

Scriptul de mai sus trebuie plasat după codul din acest articol. Dacă nu vreți să scrieți scriptul de mai sus direct în pagină, descărcați această arhivă. Dezarhivați fișierul și încărcați-l în public_html. După aceea, în loc de „cârnatu“ de mai sus, nu trebuie să scrieți decât atât:

<script src="css_async.js" defer></script>

Partajează asta:

  • Dă clic pentru a partaja pe X(Se deschide într-o fereastră nouă) X
  • Dă clic pentru a partaja pe Facebook(Se deschide într-o fereastră nouă) Facebook
  • Dă clic pentru partajare pe Telegram(Se deschide într-o fereastră nouă) Telegram
  • Dă clic pentru partajare pe WhatsApp(Se deschide într-o fereastră nouă) WhatsApp

Similare

Din categoria: Internet Etichete: cod, html, javascript, web

Abonează-te la blog prin email

Introdu adresa de email pentru a te abona la acest blog și vei primi câte un email de fiecare dată când scriu un nou articol.

Reader Interactions

Lasă un răspuns Anulează răspunsul

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Bara principală

Blogroll și recomandări

  • Stiri Timisoara
  • Grig
  • Stiri de ultima ora
  • Recomandarea Zilei
  • Ciurcaș Dan
  • Francisc Vasile
  • Wlog
  • Fii Modern

Footer

Au avut ceva de spus

  • aurelian la E bună cafeaua Gimoka?
  • Ion Georgescu la Ceasul de la Lidl se reglează singur
  • Ion Georgescu la Ceasul de la Lidl se reglează singur
  • Vasi la În căutarea unui telefon compact: vivo x200 FE

Ultimele articole de pe blog

  • Am comandat un pix de-un leu de pe eMAG
  • În căutarea unui telefon compact: vivo x200 FE
  • Renunț la niște domenii web
  • Cam greu cu returul la Orange

Cauți altceva? Caută aici:

Confidențialitate și cookie-uri: acest site folosește cookie-uri. Dacă continui să folosești acest site web, ești de acord cu utilizarea lor.

Pentru a afla mai multe, inclusiv cum să controlezi cookie-urile, uită-te aici: Politică cookie-uri

Mod întunecat

© 2025 Vasile Ruscior

La începutul paginii