您好,欢迎访问一九零五行业门户网

JQuery做出图片上传预览与删除步骤详解

这次给大家带来jquery做出图片上传预览与删除步骤详解,jquery做出图片上传预览与删除的注意事项有哪些,下面就是实战案例,一起来看一下。
1. preview.2.0.html
<!doctype html> <html> <head>  <title>上传图片预览</title>  <meta http-equiv="content-type" content="text/html; charset=utf-8">  <link rel="stylesheet" type="text/css" href="srdz.preview.2.0.css">  <script type="text/javascript" src="jquery.min.js"></script>  <script type="text/javascript" src="srdz.preview.2.0.js"></script> <script type="text/javascript">  $(function(){   var p = new imgpreview();   p.preview({previewid:imgupload1});    p.preview({previewid:imgupload2});   }); </script> </head> <body>  <p align="center" style="width: 50%;padding: 50px 300px;" id="imgupload1"></p>  <p align="center" style="width: 50%;padding: 50px 300px;" id="imgupload2"></p> </body> </html>
2. srdz.preview.2.0.css
.btn-pic {  display: block;  position: relative;  width: 120px;  height: 40px;  overflow: hidden;  cursor: pointer;  text-align: center; }   .btn-pic-bg {  border: 1px solid #ff9000;  background: none repeat scroll 0 0 #ff9000;  color: #ffffff;  text-decoration: none; }   .btn-pic span {  display: block;  line-height: 39px; }   .ipt-bg {  display: block;  position: absolute;  top: 0;  left: 0;  width: 120px;  height: 40px;  font-size: 100px;  opacity: 0;  filter: alpha(opacity=0); }   .spanc{  color: red; }   .drt {  float: right;  display: none; }   .dft {  float: left; }
3. srdz.preview.2.0.js
function imgpreview(){}   imgpreview.prototype.preview=function(options){     var time = new date().gettime();  var fileid = file + time;  var xdelid = xdel + time;  var delid = del + time;   var viewid = view + time;     var htm =  +  <p> +   <p class='dft'> +    <a class='btn-pic btn-pic-bg' href='javascript:void(0);'> +     <span>上传图片</span> +     <input id='" + fileid + "' type='file' name='file' class='ipt-bg' /> +    </a> +   </p> +   <p id='" + xdelid + "' class='drt'> +    <a class='btn-pic btn-pic-bg' href='javascript:void(0)'> +     <span>删除图片</span> +     <input type='button' id='" + delid + "' class='ipt-bg'/> +    </a> +   </p> +  </p> +  <p id='" + viewid + "'></p>;     $(# + options.previewid).html(htm);     $(# + fileid).bind(click,function(){       var $this =$(this);       var browser={    isie:function(ver){     var b = document.createelement('b');     b.innerhtml = '<!--[if ie ' + ver + ']><i></i><![endif]-->';     return b.getelementsbytagname('i').length === 1;    }   };       $this.change(function(){    var regex=/(.*)\.(jpg|jpeg|png)$/;    var val = $this.val();    if(!regex.test(val)){     $(# + viewid).html(<span class='spanc'>请选择正确的图片(jpg、jpeg、png)!</span>);     return;    }         if(browser.isie(6)){     handerother($this);    }else if(browser.isie(7) || browser.isie(8) || browser.isie(9)){     handerie789($this);    }else if(window.filereader){     handerfilereader($this);    }else{     $(# + viewid).html(<span class='spanc'>该浏览器不支持预览图片!</span>);    }         function handerfilereader($this){     var ofreader = new window.filereader(),     rfilter = /^(?:image\/bmp|image\/cis\-cod|image\/gif|image\/ief|image\/jpeg|image\/jpeg|image\/jpeg|image\/pipeg|image\/png|image\/svg\+xml|image\/tiff|image\/x\-cmu\-raster|image\/x\-cmx|image\/x\-icon|image\/x\-portable\-anymap|image\/x\-portable\-bitmap|image\/x\-portable\-graymap|image\/x\-portable\-pixmap|image\/x\-rgb|image\/x\-xbitmap|image\/x\-xpixmap|image\/x\-xwindowdump)$/i;     ofreader.onload = function (ofrevent){      $(# + viewid).html(<img src='"+ofrevent.target.result+"' style='width:100%;height:100%;'/>);      $(# + xdelid).show();     };        var afiles = $this.get(0).files;     if (afiles.length == 0) { return; }     if (!rfilter.test(afiles[0].type)) {       $(# + viewid).html(<span class='spanc'>请选择正确的图片(jpg、jpeg、png)!</span>);       return;      }     ofreader.readasdataurl(afiles[0]);    }       function handerie789($this){     if(options.width != null && parseint(options.width) > 0){      $(# + viewid).css(width,options.width + px);     }else{      $(# + viewid).css(width,378px);     }     if(options.height != null && parseint(options.height) > 0){      $(# + viewid).css(height,options.height + px);     }else{      $(# + viewid).css(height,358px);     }     $(# + viewid).css(filter,progid:dximagetransform.microsoft.alphaimageloader(sizingmethod=scale,src='+getimgsrc($this)+'));     $(# + xdelid).show();    }       function handerother($this){     $(# + viewid).html(<img src='"+$this.val()+"' style='width:100%;height:100%;'/>);     $(# + xdelid).show();    }       function getimgsrc($this){     $this.select();     $this.blur();     var imgsrc =document.selection.createrange().text;     document.selection.empty();     return imgsrc;    }             });  });//绑定按钮事件     $(# + delid).bind(click,function(){   var browser={     isie:function(ver){      var b = document.createelement('b');      b.innerhtml = '<!--[if ie ' + ver + ']><i></i><![endif]-->';      return b.getelementsbytagname('i').length === 1;     }    };       if(browser.isie(7) || browser.isie(8) || browser.isie(9)){    $(# + fileid).val('');    $(# + viewid).css(filter,);    $(# + viewid).css(width,);    $(# + viewid).css(height,);    $(# + xdelid).hide();   }else{    $(# + fileid).val('');    $(# + viewid).empty();    $(# + xdelid).hide();   }  }); };
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
uploadify实现显示进度条上传图片
jquery.ajax中url传递中文显示乱码如何处理
以上就是jquery做出图片上传预览与删除步骤详解的详细内容。
其它类似信息

推荐信息