我想知道如何从" src"获取字节大小。来自" img"用HTML / JS标记。
<img src="https://ofbuckleyandbeatles.files.wordpress.com/2011/01/testpattern.gif"/>
在上面的例子中,我基本上想知道有多大&#34; testpattern.gif&#34;是(以字节为单位)。
提前致谢。
答案 0 :(得分:11)
嗯,这是2017年,您现在可以使用Resource Timing API在javascript中提取图像的transferSize,encodedBodySize,decodingBodySize:
以下是访问所有页面上imgs的大小信息的代码(请参阅下面的所有内容):
var imgElems = document.getElementsByTagName('img');
for ( var i=0, len = imgElems.length; i < len; i++ )
{
var url = imgElems[i].src || imgElems[i].href;
if (url && url.length > 0)
{
var iTime = performance.getEntriesByName(url)[0];
console.log(iTime.transferSize); //or encodedBodySize, decodedBodySize
}
}
答案 1 :(得分:1)
遗憾的是,由于返回的值与图像的实际大小不匹配,因此提出的解决方案无法正常工作。
假设您使用的是URL,则可以执行以下操作:
wls.exe
这将通过HTTP获取资源,然后将完整的二进制文件作为blob对象返回,然后您可以访问其属性,包括其大小(以字节为单位):
const fileImg = await fetch(URL_TO_IMG).then(r => r.blob());