var f = this.files[0];
var _URL = window.URL || window.webkitURL;
var file, img;

if((file = f)){
    img = new Image();

    img.onload = function(){
        var imgW = this.width;
        //alert(imgW); WORKING
    };
    img.src = _URL.createObjectURL(file);
}

if(imgW <100){alert('image is too small');}//NOT WORKING


我正在尝试在上传文件之前获取图像宽度。

我的问题是,当我将var放在img.onload = function之外时,我无法定义imgW

我需要存储此变量,有人知道问题出在哪里吗?

我尝试了

var imgW;

if(file = f){
...
   imgW = this.width;
}

alert(imgW);


但是它也不起作用

最佳答案

如果不加载图像,就无法单独使用JavaScript获得图像的宽度。

您所寻找的似乎是图像的自然高度和宽度。

Get original dimensions of resized html image element

关于javascript - 文件上传前的javascript图像宽度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22776342/

10-11 23:42