发布于 2016-11-26 22:38:00 | 150 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的jQuery示例,程序狗速度看过来!

jQuery javascript框架

jQuery是一个兼容多浏览器的javascript框架,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。


这篇文章主要为大家详细介绍了基于JQuery实现图片上传预览与删除操作的相关代码,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JQuery实现图片上传预览与删除的具体代码,经测试目前满足谷歌、火狐、360、IE6,7,8,9,10,11等浏览器,供大家参考,具体内容如下

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>
  <div align="center" style="width: 50%;padding: 50px 300px;" id="imgupload1"></div>
  <div align="center" style="width: 50%;padding: 50px 300px;" id="imgupload2"></div>
</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 = "" +
  "<div>" +
    "<div 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>" +
    "</div>" +
    "<div 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>" +
    "</div>" +
  "</div>" +
  "<div id='" + viewid + "'></div>";
   
  $("#" + 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();
    }
  });
};

4. jquery.min.js

以上就是本文的全部内容,希望对大家学习jquery程序设计有所帮助。



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务