当我选择图像时,我正在使用jQuery在div(#image-preview)中显示图像,而我无法弄清楚如何获得图像的宽度和高度;我正在使用“this.width”和“this.height”。
这是我的代码:
"query":{
"bool":{
"must":[
{
"match":{
"Receipts.retailerId": "55f5878916c042cc8731a39e4e05b7a0"
}
},
{
"match":{
"Receipts.totalCost": 10
}
}
]
}
}
答案 0 :(得分:1)
FileReader
没有属性width和height。您可以使用Image
代替以下内容。希望这会对你有所帮助。
$('input#photo').on('change', function () {
var files = !!this.files ? this.files : [], _URL = window.URL || window.webkitURL;
if (!files.length) return;
if (/^image/.test(files[0].type)) {
var img = new Image();
img.onload = function () {
$('div#image-preview').css('display', 'inline-block');
$('div#image-preview').css('background-image', 'url(' + this.src + ')');
$('div#image-preview').css('width', this.width);
$('div#image-preview').css('height', this.height);
};
img.src = _URL.createObjectURL(files[0]);
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="file" id="photo"/>
<div id="image-preview"></div>
&#13;
答案 1 :(得分:0)
尝试使用此方法将照片的宽度和高度保存到变量,在第一个函数的开头,然后,在第二个函数中使用这些变量。这是范围问题。