在加载图像之前,我想用这个代码来检查图像的宽高比。
我的问题是没有触发与 image.complete 事件绑定的功能回调。
我哪里错了?
checkAspectRation : function(file){
var reader = new FileReader();
/*Read the file*/
reader.readAsDataURL(file);
/*Callback */
reader.onloadend = (function() {
var image = new Image();
image.complete = function() {
// access image size here
console.log("Width: " + this.width);
console.log("Height: " + this.height);
};
image.src = reader.result;
console.log(image);
});
},
这是加载后图像的值:
[编辑]
我改变了这种方式,但它仍然无法正常工作
checkAspectRation : function(file){
var image = new Image();
image.onload = function() {
// access image size here
console.log("Width: " + this.width);
console.log("Height: " + this.height);
};
var reader = new FileReader();
/*Callback */
reader.onloadend = (function() {
console.log(image);
image.src = reader.result;
});
/*Read the file*/
reader.readAsDataURL(file);
},
答案 0 :(得分:0)
解决方案已更改:
main()
与
var image = new Image();
这很好用:
var image = document.createElement("img");