亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jQuery+PHP實現上傳裁剪圖片

2019-11-19 12:36:27
字體:
來源:轉載
供稿:網友

本文是一個簡單的jquery圖片預覽+裁剪的例子,原理是在前端獲取要裁剪的信息,如寬高比、裁剪坐標,上傳圖片之后在后端php進行切割

jquery代碼(必須在最后面引入)

function showCutImg(showImg){      var showImg = $(showImg);      var changeInput = showImg.parents('.showImgDiv').siblings('.CutImage');      var size = changeInput.siblings('.imgCoord').attr('ratio').split('*');      var needWidth = size[0];      var needHeight = size[1];      var ratio = parseInt(needWidth)/parseInt(needHeight);      ratio = parseFloat(ratio.toFixed(2));      var thisFullDiv = showImg.parent();      var coordArr = changeInput.siblings('.imgCoord').val().split(',');      thisCutImgWidth = showImg.width();      thisCutImgHeight = showImg.height()      thisFullDiv.css('width',thisCutImgWidth);      thisFullDiv.css('height',thisCutImgHeight);      if((thisCutImgWidth/thisCutImgHeight)>=ratio){        var thisCutDivHeight = thisCutImgHeight;        var thisCutDivWidth = thisCutDivHeight*ratio;      }else{        var thisCutDivWidth = thisCutImgWidth;        var thisCutDivHeight = thisCutDivWidth/ratio;      }      var hideWidth = (thisFullDiv.width()-thisCutDivWidth)/2;      showImg.siblings('.hideImgLeft').width(hideWidth);      showImg.siblings('.hideImgRight').width(hideWidth);      var hideHeight = (thisFullDiv.height()-thisCutDivHeight)/2;      showImg.siblings('.hideImgTop').width(thisCutDivWidth);      showImg.siblings('.hideImgBottom').width(thisCutDivWidth);      showImg.siblings('.hideImgTop').height(hideHeight);      showImg.siblings('.hideImgBottom').height(hideHeight);      if(hideWidth>0){        var cutRatioX = thisCutImgWidth/hideWidth;      }else{        var cutRatioX = 0      }      if(hideHeight>0){        var cutRatioY = thisCutImgHeight/hideHeight;      }else{        var cutRatioY = 0;      }      var coord = needWidth+'#'+needHeight+'#'+(cutRatioX)+'#'+(cutRatioY);      if(coordArr!=''){        coordArr.push(coord);      }else{        coordArr = [coord];      }      changeInput.siblings('.imgCoord').val(coordArr);      $('.fullDiv').on('mousedown',function(e){        var me = $(this);        var changeInput = me.parent().siblings('.CutImage');        var index = me.attr('index');        var oldx = e.pageX;        var oldy = e.pageY;        var imgleft = me.children('.cutImg').position().left;        var imgtop = me.children('.cutImg').position().top;        var maxw = me.children('.hideImgLeft').width();        var maxh = me.children('.hideImgTop').height();        var goordArr = changeInput.siblings('.imgCoord').val().split(',');        var cutDivSize = goordArr[index].split('#');        $(document).mousemove(function(e){          var newx = e.pageX;          var newy = e.pageY;          var movex = newx - oldx;          var movey = newy - oldy;          var x = movex + imgleft;          var y = movey + imgtop;          if(Math.abs(x)>maxw){            if(x>0) x = maxw;            if(x<0) x = -maxw;          }          if(Math.abs(y)>maxh){            if(y>0) y = maxh;            if(y<0) y = -maxh;          }          me.children('.cutImg').css('left',x+'px');          me.children('.cutImg').css('top',y+'px');          if(parseInt(maxw - x)>0){            var cutRatioX = me.children('.cutImg').width()/parseInt(maxw - x);          }else{            var cutRatioX = 0;          }          if(parseInt(maxh - y)>0){            var cutRatioY = me.children('.cutImg').height()/parseInt(maxh - y)          }else{            var cutRatioY = 0;          }          var cutImgPo = (cutRatioX) +'#'+ (cutRatioY);          var coordVal = cutDivSize[0]+'#'+cutDivSize[1]+'#'+cutImgPo;          goordArr[index] = coordVal;          changeInput.siblings('.imgCoord').val(goordArr);        });      });      $(document).on('mouseup',function(e){        $(document).unbind('mousemove');      });    }    $(".CutImage").change(function(){      $(this).siblings('.imgCoord').val('');      if($(this).prop('multiple')!=true){    //判斷是否多文件上傳        var objUrl = getObjectURL1(this.files[0]) ;        var showImgWidth = $(this).siblings('.showImgDiv').attr('showImgWidth');        if(!showImgWidth)        {          showImgWidth = '150';        }        if (objUrl) {            html = '';            html += '<div style="border:1px solid #000;position:relative;z-index:2;overflow:hidden;cursor:move;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;" index="0" class="fullDiv">';            html += '<div style="position:absolute;background:#ccc;top:0;z-index:4;opacity:0.95;left:0;right:0;margin:auto;" class="hideImgTop"></div>';            html += '<div style="position:absolute;background:#ccc;bottom:0;z-index:4;opacity:0.95;left:0;right:0;margin:auto;" class="hideImgBottom"></div>';            html += '<div style="position:absolute;height:100%;background:#ccc;left:0;z-index:4;opacity:0.95;" class="hideImgLeft"></div><div style="position:absolute;z-index:3;left:0;right:0;top:0;bottom:0;margin:auto;" class="cutDiv"></div>';            html += '<div style="position:absolute;height:100%;background:#ccc;right:0;z-index:4;opacity:0.95;" class="hideImgRight"></div>';            html += '<img style="position:absolute;z-index:1;width:'+showImgWidth+'px" onload="showCutImg(this)" class="cutImg" class="imgshover" src="'+objUrl+'" alt="圖片加載失敗" />';            html += '</div>';                                $(this).siblings('.showImgDiv').html(html);        }      }else{        var objUrl = getObjectURL2($(this).get(0).files);        if (objUrl) {          var showImgWidth = $(this).siblings('.showImgDiv').attr('showImgWidth');          if(!showImgWidth)          {            showImgWidth = '150';          }          var html = '';          for(var i=0;i<objUrl.length;i++)          {            html += '<div style="margin-bottom:5px;border:1px solid #000;position:relative;z-index:2;overflow:hidden;cursor:move;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;" index="'+i+'" class="fullDiv">';            html += '<div style="position:absolute;background:#ccc;top:0;z-index:4;opacity:0.95;left:0;right:0;margin:auto;" class="hideImgTop"></div>';            html += '<div style="position:absolute;background:#ccc;bottom:0;z-index:4;opacity:0.95;left:0;right:0;margin:auto;" class="hideImgBottom"></div>';            html += '<div style="position:absolute;height:100%;background:#ccc;left:0;z-index:4;opacity:0.95;" class="hideImgLeft"></div><div style="position:absolute;z-index:3;left:0;right:0;top:0;bottom:0;margin:auto;" class="cutDiv"></div>';            html += '<div style="position:absolute;height:100%;background:#ccc;right:0;z-index:4;opacity:0.95;" class="hideImgRight"></div>';            html += '<img style="position:absolute;z-index:1;width:'+showImgWidth+'px" onload="showCutImg(this)" class="cutImg" class="imgshover" src="'+objUrl[i]+'" alt="圖片加載失敗" />';            html += '</div>';                    //修改img標簽的width樣式可改變預覽圖大小          }          $(this).siblings('.showImgDiv').html(html);        }        //$('.fullDiv').css('float','left');      }    }) ;    //建立一亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

中文字幕亚洲图片| 国语自产精品视频在线看一大j8| 搡老女人一区二区三区视频tv| 日本韩国欧美精品大片卡二| 色综合色综合久久综合频道88| 91久久国产精品| 海角国产乱辈乱精品视频| 久久久久久国产精品美女| 日韩一区二区欧美| 欧美视频不卡中文| 亚洲桃花岛网站| 日韩福利伦理影院免费| 日韩国产精品一区| 亚洲黄在线观看| 日本伊人精品一区二区三区介绍| 亚洲欧美一区二区三区四区| 欧美极品欧美精品欧美视频| 欧美激情性做爰免费视频| 久久夜色精品国产欧美乱| 中文字幕亚洲综合久久| 欧美另类极品videosbest最新版本| 亚洲xxxxx| 亚洲精品国产精品久久清纯直播| 亚洲视频999| 国产精品久久久久久久午夜| 国产精品自在线| 亚洲成人免费在线视频| 亚洲成人教育av| 日韩免费黄色av| 96pao国产成视频永久免费| 日韩精品日韩在线观看| 久久久国产91| 欧美激情第99页| 中日韩美女免费视频网站在线观看| 成人国产在线视频| 日产精品久久久一区二区福利| 国产精品视频成人| 美女福利精品视频| 亚洲第一视频网站| 欧美激情a在线| 亚洲成人精品久久久| 青青久久aⅴ北条麻妃| 亚洲第一网站男人都懂| 成人av资源在线播放| 国产精品日韩在线一区| 性色av一区二区三区免费| 亚洲福利视频二区| 亚洲最大在线视频| 成人在线激情视频| 欧美中文字幕在线播放| 疯狂欧美牲乱大交777| 亚洲视频777| 亚洲嫩模很污视频| 久久亚洲精品成人| 国产成人啪精品视频免费网| 黄色一区二区在线| 91精品国产自产在线观看永久| 欧美日韩国产999| 97不卡在线视频| 亚洲精品一区二区久| 亚洲精品久久久久久久久久久| 亚洲第一中文字幕在线观看| 日本三级韩国三级久久| 亚洲精品免费网站| 高清亚洲成在人网站天堂| 国产香蕉精品视频一区二区三区| 成人中文字幕+乱码+中文字幕| 久久国产精品久久久久久久久久| 日韩在线视频线视频免费网站| 成人免费在线网址| 成人h视频在线| 久久久久久午夜| 中文字幕亚洲欧美一区二区三区| 亚洲区免费影片| 国产精品女人网站| 国产精品一区二区久久久| 国产精品丝袜一区二区三区| 欧美日韩在线视频一区二区| 国产精品亚洲网站| 国产日本欧美一区二区三区| 欧美三级欧美成人高清www| 久久综合久中文字幕青草| 亚洲性线免费观看视频成熟| 欧美日韩美女在线| 九九精品在线视频| 韩国国内大量揄拍精品视频| 亚洲成人网在线观看| 国产精品入口尤物| 日韩欧美中文免费| 日韩精品视频免费专区在线播放| 91在线视频免费| 欧美黑人一级爽快片淫片高清| 夜色77av精品影院| 精品久久久久久久久国产字幕| 日韩av有码在线| 在线观看欧美成人| 免费91麻豆精品国产自产在线观看| 久久久免费在线观看| 成人美女av在线直播| 这里只有精品在线观看| 91精品久久久久久久久久久久久久| 久久69精品久久久久久国产越南| 91精品国产电影| 亚洲少妇激情视频| 51视频国产精品一区二区| 久久99亚洲精品| 欧美精品制服第一页| 亚洲成色777777女色窝| 九九视频这里只有精品| 国产日本欧美一区| 成人精品视频久久久久| 成人久久久久爱| 国产精品一区二区女厕厕| 国产精品国模在线| 精品久久久久久久久久久| 久久久久亚洲精品成人网小说| 色多多国产成人永久免费网站| 欧美人在线观看| 国产欧亚日韩视频| 国产亚洲一区精品| 最近2019好看的中文字幕免费| 日韩av手机在线观看| 97视频免费在线看| 精品视频在线播放色网色视频| 国产亚洲视频中文字幕视频| 国语自产精品视频在线看一大j8| 97精品国产97久久久久久| 91在线中文字幕| 8090成年在线看片午夜| 亚洲精品自拍视频| 97国产一区二区精品久久呦| 欧美人与物videos| 欧美日韩国产综合新一区| 亚洲高清一二三区| 欧美黑人一级爽快片淫片高清| 日本不卡免费高清视频| www日韩欧美| 伊人亚洲福利一区二区三区| 久久6精品影院| 91国内免费在线视频| 91色在线视频| 欧美性色视频在线| 日韩av在线资源| 亚洲人成啪啪网站| 91久久久久久久一区二区| 国产精品jvid在线观看蜜臀| 亚洲最大福利视频网站| 国产精品一区二区3区| 久久久999精品视频| 欧美老女人在线视频| zzijzzij亚洲日本成熟少妇| 欧美激情亚洲另类| 青青草国产精品一区二区| 欧美日韩中文字幕在线视频| 海角国产乱辈乱精品视频| 欧美大全免费观看电视剧大泉洋| 夜夜嗨av一区二区三区四区| 精品美女久久久久久免费| 国产成人av在线| 亚洲国产精品va| 欧美视频在线观看免费网址| 日韩极品精品视频免费观看| 久久国产精品久久国产精品| 狠狠躁夜夜躁人人爽天天天天97|