怎么样在input标签选择是直接显示本地图片
2016-06-25 17:44
351 查看
第一步创建html,我们在页面中引入jquery库放置一个文件选择的<input type="file" id="file">和一个显示结果的div#image-wrap。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
<input type="file" id="file">
<div id="image-wrap"></div>
第二步我们创建一个jquery插件image-file-visible.js方便我们以后使用
//图片显示插件
(function($) {
$.imageFileVisible = function(options) {
// 默认选项
var defaults = {
//包裹图片的元素
wrapSelector: null,
//<input type=file />元素
fileSelector: null ,
width : '100%',
height: 'auto',
errorMessage: "不是图片"
};
// Extend our default options with those provided.
var opts = $.extend(defaults, options);
$(opts.fileSelector).on("change",function(){
var file = this.files[0];
var imageType = /image.*/;
if (file.type.match(imageType)) {
var reader = new FileReader();
reader.onload = function(){
var img = new Image();
img.src = reader.result;
$(img).width( opts.width);
$(img).height( opts.height);
$( opts.wrapSelector ).append(img);
};
reader.readAsDataURL(file);
}else{
alert(opts.errorMessage);
}
});
};
})(jQuery);
第三步这里是全部的html
<html>
<meta charset="utf-8">
<title>input标签选择file直接读取本地图片并显示</title>
<body>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="image-file-visible.js">
</script>
<script>
$(document).ready(function(){
//图片显示插件
$.imageFileVisible({wrapSelector: "#image-wrap",
fileSelector: "#file",
width: 100,
height: 50
});
});
</script>
<input type="file" id="file">
<div id="image-wrap"></div>
</body>
</html>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
<input type="file" id="file">
<div id="image-wrap"></div>
第二步我们创建一个jquery插件image-file-visible.js方便我们以后使用
//图片显示插件
(function($) {
$.imageFileVisible = function(options) {
// 默认选项
var defaults = {
//包裹图片的元素
wrapSelector: null,
//<input type=file />元素
fileSelector: null ,
width : '100%',
height: 'auto',
errorMessage: "不是图片"
};
// Extend our default options with those provided.
var opts = $.extend(defaults, options);
$(opts.fileSelector).on("change",function(){
var file = this.files[0];
var imageType = /image.*/;
if (file.type.match(imageType)) {
var reader = new FileReader();
reader.onload = function(){
var img = new Image();
img.src = reader.result;
$(img).width( opts.width);
$(img).height( opts.height);
$( opts.wrapSelector ).append(img);
};
reader.readAsDataURL(file);
}else{
alert(opts.errorMessage);
}
});
};
})(jQuery);
第三步这里是全部的html
<html>
<meta charset="utf-8">
<title>input标签选择file直接读取本地图片并显示</title>
<body>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="image-file-visible.js">
</script>
<script>
$(document).ready(function(){
//图片显示插件
$.imageFileVisible({wrapSelector: "#image-wrap",
fileSelector: "#file",
width: 100,
height: 50
});
});
</script>
<input type="file" id="file">
<div id="image-wrap"></div>
</body>
</html>
相关文章推荐
- Leetcode 202. Happy Number
- DC 课程内容
- JS小技巧:判断数据类型的一种方法
- 再看JavaEE
- Groovy学习:第三章 Groovy开发环境
- hdu 5055(贪心)
- 1.2、开发工具——sublime篇
- 助教日志_期末总结
- DC课程目标
- linux 硬盘报警声
- 5.3 Python 列表
- 各大公司广泛使用的在线学习算法FTRL详解
- Activity中windowSoftInputMode属性
- linux 硬盘报警声
- 加密解密原理
- JavaScript(二)
- linux 硬盘报警声
- h5学习笔记: ul和li组合
- java中的List集合运算
- hadoop中NameNode、DataNode、Secondary、NameNode、ResourceManager、NodeManager 介绍