[FILE API]利用Javascript上传图片
1.HTML结构
<label for="file-input">File:</label>
<input type="file" id="file-input" />
/*<img src="" alt="" accept="image/*" style="max-width: 250px">*/
<img src="" alt="" style="max-width: 250px">
input的accept属性需要ie10的支持所以后面用js来判断。
2.上传API
$(function() {
var $fileInput = $('input[type=file]');
var $imageArea = $('img');
var fileInfo;
$fileInput.on('change', getFileInfo);
function getFileInfo(e) {
var file = e.target.files[0];
var reader = new FileReader();
reader.onload = (function(imageFile) {
return function(e) {
fileInfo = e.target.result;
$imageArea.attr('src',fileInfo);
}
})(file);
reader.readAsDataURL(file);
}
});
这样就可以实现功能了
3.判断文件类型
(/\.(jpg|jpeg|png)/i).test(file.name)
完整代码为
$(function() {
var $fileInput = $('input[type=file]');
var $imageArea = $('img');
var fileInfo;
$fileInput.on('change', getFileInfo);
function getFileInfo(e) {
var file = e.target.files[0];
if (!(/\.(jpg|jpeg|png)/i).test(file.name)) {
alert("只支持jpg/jpeg/png类型");
}else{
var reader = new FileReader();
reader.onload = function(e) {
fileInfo = e.target.result;
$imageArea.attr('src',fileInfo);
}
reader.readAsDataURL(file);
}
}
});
4.参考资料
[FILE API]利用Javascript上传图片的更多相关文章
- 通过Canvas及File API缩放并上传图片完整示例
<!DOCTYPE html> <html> <head> <title>通过Canvas及File API缩放并上传图片</title> ...
- 通过Canvas及File API缩放并上传图片
原文地址:Resize an Image Using Canvas, Drag and Drop and the File API 示例地址:Canvas Resize Demo 原文作者:Dr. T ...
- 通过Canvas及File API缩放并上传图片完整演示样例
创建一个只管的用户界面,并同意你控制图片的大小.上传到server端的数据,并不须要处理enctype为 multi-part/form-data 的情况.只一个简单的POST表单处理程序就能够了. ...
- 通过 File API 使用 JavaScript 读取文件
原文地址:http://www.html5rocks.com/zh/tutorials/file/dndfiles/ 简介 HTML5 终于为我们提供了一种通过 File API 规范与本地文件交互的 ...
- HTML5 File API — 让前端操作文件变的可能
前言 在 HTML5 File API 出现之前,前端对于文件的操作是非常有局限性的,大多需要配合后端实现.出于安全角度考虑,从本地上传文件时,代码不可能获取文件在用户本地的地址,所以纯前端不可能完成 ...
- 使用 JavaScript File API 实现文件上传
概述 以往对于基于浏览器的应用而言,访问本地文件都是一件头疼的事情.虽然伴随着 Web 2.0 应用技术的不断发展,JavaScript 正在扮演越来越重要的角色,但是出于安全性的考虑,JavaScr ...
- 【小月博客】用HTML5的File API做上传图片预览功能
前段时间做了一个项目,涉及到上传本地图片以及预览的功能,正好之前了解过 html5(点击查看更多关于web前端的有关资源) 可以上传本地图片,然后再网上看了一些demo结合自己的需求,终于搞定了.(P ...
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
权声明:本文为博主原创文章,未经博主允许不得转载. 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内.以及两点间的测距功能. 绘制多边形(蓝色) ...
- html5 文件系统File API
前言: 在做浏览器上传图片的时候,一般采用form表单上传,这种上传无法预览图片,无法查看图片大小,无法知道图片的类型等等!那么在html5 File API提供了这些表单无法实现的功能,而且还支持拖 ...
随机推荐
- HTML超链接应用场景
页面间的连接 A页到B页,最常用,用于网络导航. 如图所示: ********************************************************************* ...
- Git初始化本地仓库及管理远程仓库github
1.首先在本地安装git,地址:https://git-scm.com/downloads.下载安装好git工具. 2.将自己在github上的注册的用户名和邮箱写入本地git的配置文件中: (1). ...
- Windows 搭建MongoDB分片集群(二)
在本篇博客中我们主要讲描述分片集群的搭建过程.配置分片集群主要有两个步骤,第一启动所有需要的mongod和mongos进程.第二步就是启动一个mongos与集群通信.下面我们一步步来描述集群的搭建过程 ...
- Flutter的flutter_calendar日曆的使用
效果: 添加依賴: flutter_calendar: ^0.0.1 項目中導入 import 'package:flutter_calendar/flutter_calendar.dart'; 例子 ...
- sentinel集群docker-compose.yml配置
redis安装 version: '3.1'services: master: image: redis container_name: redis-master ports: - 6379:6379 ...
- Linux的cat命令详解
The cat command reads one or more files and copies them to standard output 也就是说,cat命令读取文件,并显示在 stand ...
- JS 判断undefined
tax !== underfined underfined 是判断的是类型的结果, 如果加typeof后是字符串类型 写法:typeof(tax) !== "underfined" ...
- sqlserver2008锁表语句详解(锁定数据库一个表)
锁定数据库的一个表 复制代码代码如下: SELECT * FROM table WITH (HOLDLOCK) 注意: 锁定数据库的一个表的区别 复制代码代码如下: SELECT * FROM tab ...
- [CSP-S模拟测试]:公园(BFS+剪枝)
题目传送门(内部题31) 输入格式 第一行,五个整数$V,M,N,E,L$.接下来$M$行,每行两个正整数$s_i,a_i$.保证$s_i$互不相等.接下来$N$行,每行两个正整数$t_j,b_j$. ...
- Spring JDK动态代理
1. 创建项目在 MyEclipse 中创建一个名称为 springDemo03 的 Web 项目,将 Spring 支持和依赖的 JAR 包复制到 Web 项目的 WEB-INF/lib 目录中,并 ...