Como detectar se o navegador suportar imagens do tipo Webp

image_pdfimage_print

O código abaixo para detectar se um browser tem suporter para imagens do tipo Webp, faz uso dos comandos async / await para gerir as promises. Da mesma forma, o código abaixo pode ser executado em um service worker.

async function supportsWebp() {
  if (!self.createImageBitmap) return false;
  
  const webpData = 'data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA=';
  const blob = await fetch(webpData).then(r => r.blob());
  return createImageBitmap(blob).then(() => true, () => false);
}

(async () => {
  if(await supportsWebp()) {
    console.log('Webp é suportado pelo navegador.');
  }
  else {
    console.log('Webp não é suportado pelo navegador.');
  }
})();
Gostou? Tire um minutinho e dê sua contribuição para Drall Dev Community no Patreon!