作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
function filePreview (input) {
if(input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function(e) {
$('#uploadForm + img').remove();
$('#uploadForm').after('<img src="'+e.target.result+'" width="840" height="600" />');
}
reader.readAsDataURL(input.files[0]);
}
}
$('#fileThumbnail').change(function() {
filePreview(this);
});
我正在尝试预览图像,但仅接受宽度:840px、高度:600px 不多也不少的图像。并返回错误以选择这些确切尺寸的图像
最佳答案
您可以尝试将文件转换为Image元素在应用之前获取宽度和高度。
我还添加此行 /(image\/)(jpeg|jpg|bmp|gif)/.test(input.files[0].type)
在转换之前检查文件扩展名(仅接受扩展名为 jpef
、jpg
、bmp
和 gif
的图像)
function filePreview (input) {
if(input.files && input.files[0] && /(image\/)(jpeg|jpg|bmp|gif)/.test(input.files[0].type)) {
var reader = new FileReader();
reader.onload = function(e) {
var image = new Image();
image.onload = function () {
// you can check the image width and height here
var width = this.width;
var height = this.height;
if (width === 840 && height === 600) {
// code goes here...
// $('#uploadForm + img').remove();
// $('#uploadForm').after(this);
}
$('body').append(this);
};
image.src = this.result;
}
reader.readAsDataURL(input.files[0]);
}
}
$('#fileThumbnail').change(function() {
filePreview(this);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="file" id="fileThumbnail" />
关于jquery - 如何限制图片上传的高度和宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59367731/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!