如何从URL获取图像大小

Pra*_*iya 3 jquery

我正在尝试下面的代码,从实时URL获取KB/MB/GB(不是宽度和高度)的图像大小.但它不起作用.

var xhr = new XMLHttpRequest();

xhr.open('HEAD', 'http://www.2015autoblog.com/wp-content/uploads/2014/09/2015-Toyota-Land-Cruiser-Front.jpg', true);
Run Code Online (Sandbox Code Playgroud)

调试器

alert(xhr.status);

if ( xhr.status == 200 ) {
    alert('Size in bytes: ' + xhr.getResponseHeader('Content-Length'));
} else {
    alert('ERROR');
}
Run Code Online (Sandbox Code Playgroud)

小智 12

试试这个代码吧

var tmpImg = new Image();
tmpImg.src="https://www.google.com/intl/en_com/images/srpr/logo3w.png"; //or  document.images[i].src;
$(tmpImg).one('load',function(){
  orgWidth = tmpImg.width;
  orgHeight = tmpImg.height;
  alert(orgWidth+"x"+orgHeight);
});
Run Code Online (Sandbox Code Playgroud)

上面的代码将获取图像尺寸.

对于文件大小:不,你无法使用jQuery或纯JavaScript获得图像大小.唯一的方法是使用ajax从服务器端获取它.

您可以将图像URL发送到服务或服务器端页面,并让页面或服务返回图像大小.

  • 没有高度和宽度.我需要KB/MB的大小.像1 MB等 (2认同)