jquery实现图⽚上传前本地预览功能
本⽂实例为⼤家分享了jquery实现图⽚上传前预览的具体代码,供⼤家参考,具体内容如下
介绍之前有⼀个⼩问题,⼀直不到图⽚预览时,图⽚不出来的原因,原来在于图⽚的路径⼀直写的是图⽚的本地路径,没有什么⽤。直接上代码。
html部分:
复制代码代码如下:
<img id="pic" src="" >
<input id="upload" name="file" accept="image/*" type="file" />
input:file事件是上传类型
较常⽤的属性值如下:
accept:表⽰可以选择的⽂件MIME类型,多个MIME类型⽤英⽂逗号分开,常⽤的MIME类型见下表。
若要⽀持所有图⽚格式,则写 * 即可。
multiple:是否可以选择多个⽂件,多个⽂件时其value值为第⼀个⽂件的虚拟路径
input:file的样式是不变的,所以若要改变它的样式,⾸先将它隐藏。display:none;
CSS部分:
因为做的是⼀个圆形的头像,所以对图⽚样式先进⾏定义。
#pic{
width:100px;
height:100px;
border-radius:50% ;
margin:20px auto;
cursor: pointer;
}
jQuery部分:
$(function() {
$("#pic").click(function () {
$("#upload").click(); //隐藏了input:file样式后,点击头像就可以本地上传
$("#upload").on("change",function(){
var objUrl = getObjectURL(this.files[0]) ; //获取图⽚的路径,该路径不是图⽚在本地的路径
if (objUrl) {
$("#pic").attr("src", objUrl) ; //将图⽚路径存⼊src中,显⽰出图⽚
}
});
});
});
//建⽴⼀個可存取到該file的url
function getObjectURL(file) {
var url = null ;
if (ateObjectURL!=undefined) { // basic
url = ateObjectURL(file) ;
jquery在线图片
} else if (window.URL!=undefined) { // mozilla(firefox)
url = ateObjectURL(file) ;
} else if (window.webkitURL!=undefined) { // webkit or chrome
url = ateObjectURL(file) ;
}
return url ;
}
运⾏结果如下:
更多精彩内容,请点击,进⾏深⼊学习和研究。
以上就是本⽂的全部内容,希望对⼤家学习jquery程序有所帮助。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。