获取图像URL的远程加载图像的文件大小

ram*_*amr 6 javascript jquery image image-processing remote-access

我在jQuery中有一个简单的正则表达式函数,可以为用户发布的图像URL添加图像标记.因此,当用户发布时,例如www.example.com/image.jpg 将添加图像标签,以便用户可以在不点击URL的情况下看到图像.

var hostname = window.location.hostname.replace(/\./g,'\\.');
var re = new RegExp('(http:\\/\\/[^' + hostname + ']\\S+[\\.jpeg|\\.png|\\.jpg|\\.gif])','g');

$(".texthold ").each(function() {
    $(this).html($(this).html().replace(re, '<a href="$1"><img src="$1" /></a>')); 
});
Run Code Online (Sandbox Code Playgroud)

如何在允许图像查看之前检查图像的文件大小?因此,如果图像文件大小超过5MB,则不会显示图像,而是显示URL.

akh*_*khl 4

var url = ...; // here you build URL from regexp result

var req = $.ajax({
  type: "HEAD",
  url: url,
  success: function () {
    if(req.getResponseHeader("Content-Length") < 5 * 1048576) // less than 5 MB?
      ; // render image tag
    else
      ; // render URL as text   
  }
});
Run Code Online (Sandbox Code Playgroud)