使用Javascript访问onload之外的图像宽度

使用Javascript访问onload之外的图像宽度,javascript,image,callback,onload,Javascript,Image,Callback,Onload,我正在尝试使用回调来确定图像宽度是否正确。当使用onload时,似乎不可能返回true或false 这个回调是否可以缓解这个问题?似乎onload事件从未触发 validateImageSize(function(imageWidth){ alert(imageWidth); }); function validateImageSize(callback) { imageFile = document.getElementById("filePath").files[0]

我正在尝试使用回调来确定图像宽度是否正确。当使用onload时,似乎不可能返回true或false

这个回调是否可以缓解这个问题?似乎onload事件从未触发

validateImageSize(function(imageWidth){
     alert(imageWidth);
});


function validateImageSize(callback) {

    imageFile = document.getElementById("filePath").files[0];
    imageFileUrl = window.URL.createObjectURL(imageFile);
    uploadedImage = new Image();

    uploadedImage.onload = function(){
        var imageWidth = uploadedImage.width;
        callback(imageWidth); 
    };

    uploadedImage.src = imageFileUrl;

};

从onload执行(您可以从那里调用另一个函数,并传递任何需要的数据)。这是一个异步事件,您不能使用
return
。谢谢,我可以将onload之外的宽度传递给其他函数。然而,我的check form函数中的if语句仍然总是失败,因为我永远无法返回validImageSize函数。我可以将宽度传递回ValidImage Size函数吗?没有办法,您根本无法返回;你需要重新构造你的代码来处理这个问题。谢谢你的回复,我对这个问题很陌生,所以请原谅我的技能不足..意外中按回车键。。那么,我需要回调才能让它正常工作吗?