#testiranje (3)

Ha, našao sam odličnu foru da proverim sve <picture> elemente (svaki <source srcset="...">) u web konzoli i to tako da ignorišem loading=lazy i decoding=async.

Super #korisno pogotovo kada krenem da divljam sa formatima slika. Poslednji test za skriptu koja pravi muzički "portfolio" mi daje 150 webp i 150 jpeg slika za 41 traku. Avif i JXL će doći u PIL kad-tad dok ja aktivno razmatram mogućnost da krenem da koristim convert u međuvremenu.

#igrarije #testiranje


document.querySelectorAll('picture').forEach(p => Array.from(p.querySelectorAll('source[srcset], img[srcset], img[src]')).forEach(s => (s.getAttribute('srcset') ? s.getAttribute('srcset').split(',').map(u => u.trim().split(' ')[0]) : [s.getAttribute('src')]).forEach(u => fetch(u).then(res => console.log(u + ': ' + (res.ok ? 'Success' : 'Error ' + res.status))).catch(err => console.error(u + ': Error', err)))));

JavaScript provera slika u konzoli 2
#igrarije #testiranje #korisno


(async()=>{let u=[...document.querySelectorAll('picture')].flatMap(p=&gt;[...p.querySelectorAll('source[srcset], img[srcset], img[src]')].flatMap(s=&gt;(s.getAttribute('srcset')?s.getAttribute('srcset').split(',').map(u=&gt;u.trim().split(' ')[0]):[s.getAttribute('src')]).filter(u=&gt;u))),r=await Promise.all(u.map(u=&gt;fetch(u).then(res=&gt;res.status=404?u:'').catch(()=&gt;''))),f=r.filter(u=&gt;u);f.length?console.error('Faulty URLs:',f):console.log('All is good, no faulty URLs found.');})();

JavaScript provera slika u konzoli
#igrarije #testiranje #korisno