亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        全屏js頭像上傳插件源碼高清版

        字號(hào):


            本文實(shí)例為大家分享了全屏js頭像上傳插件源碼,供大家參考,具體內(nèi)容如下
            index.html
            <!DOCTYPE html> 
            <html> 
            <head> 
              <meta name="viewport" content="width=device-width" /> 
              <title>ccp</title> 
              <link href="Content/ccp.css" rel="stylesheet" /> 
              <script src="Scripts/cxc.js"></script> 
              <script src="Scripts/ccp.js"></script> 
              <script src="Scripts/fun.js"></script> 
            </head> 
            <body> 
              <div id="SelectPicture">選 擇 圖 片</div> 
              <div id="pre"> 
                <div id="prea"> 
                  <div id="ctna"> 
                    <img id="imga"/> 
                  </div> 
                </div> 
                <div id="preb"> 
                  <div id="ctnb"> 
                    <img id="imgb"/> 
                  </div> 
                </div> 
                <div id="prec"> 
                  <div id="ctnc"> 
                    <img id="imgc"/> 
                  </div> 
                </div> 
              </div> 
              <div id="ccp"> 
                <div id="ctn"> 
                  <img id="fixed_img" /> 
                  <div id="varied_div"> 
                    <img id="varied_div_img" /> 
                    <i id="TopLeft"></i> 
                    <i id="TopRight"></i> 
                    <i id="BottomRight"></i> 
                    <i id="BottomLeft"></i> 
                  </div> 
                </div> 
                <div id="black_cover"></div> 
              </div> 
              <div id="bt"> 
                <div id="Y_OUT"> 
                  <div id="Y">Y</div> 
                </div> 
                <div id="N_OUT"> 
                  <div id="N">N</div> 
                </div> 
              </div> 
            </body> 
            </html>
            cxc.js
            /* cxc.js 頻繁操作公共接口 */
            var $ = function (id) { 
              return document.getElementById(id); 
            };  //通過(guò)id獲取dom對(duì)象 
            var A = function (msg) { 
              alert(msg); 
            };  //alert的簡(jiǎn)寫(xiě) 
            var EmptyFun = function () { 
            };  // 空方法 
            var setL = function (dom, L) { 
              dom.style.left = L + "px"; 
            };  // 設(shè)置 dom 的 left 
            var setT = function (dom, T) { 
              dom.style.top = T + "px"; 
            };  // 設(shè)置 dom 的 top 
            var setLT = function (dom, L, T) { 
              dom.style.left = L + "px"; 
              dom.style.top = T + "px"; 
            };  //同時(shí)設(shè)置 dom 的 left top 
            var getLT = function (dom) { 
              return [parseInt(dom.style.left), parseInt(dom.style.top)]; 
            };  //  返回dom的left和top值,類型為整型數(shù)組[int,int] 
            var setW = function (W) { 
              dom.style.width = W + "px"; 
            };   // 設(shè)置 dom 的 width 
            var setH = function (H) { 
              dom.style.height = H + "px"; 
            };   // 設(shè)置 dom 的 height 
            var setWH = function (dom, W, H) { 
              dom.style.width = W + "px"; 
              dom.style.height = H + "px"; 
            };   //同時(shí)設(shè)置 dom 的 width height 
            var getWH = function (dom) { 
              return [parseInt(dom.style.width), parseInt(dom.style.height)]; 
            }; //  返回dom的 width 和 height 值,類型為整型數(shù)組[int,int] 
            var setLTWH = function (dom, L, T, W, H) { 
              dom.style.left = L + "px"; 
              dom.style.top = T + "px"; 
              dom.style.width = W + "px"; 
              dom.style.height = H + "px"; 
            };  //同時(shí)設(shè)置 dom 的 left top width height 
            var setRTWH = function (dom, R, T, W, H) { 
              dom.style.right = R + "px"; 
              dom.style.top = T + "px"; 
              dom.style.width = W + "px"; 
              dom.style.height = H + "px"; 
            };  //同時(shí)設(shè)置 dom 的 left top width height 
            var getLTWH = function (dom) { 
              return [parseInt(dom.style.left), parseInt(dom.style.top), parseInt(dom.style.width), parseInt(dom.style.height)] 
            };   // 返回dom的 left top width height 值,類型為整型數(shù)組[int,int,int,int] 
            var setcursor = function (dom,shape) { 
              dom.style.cursor = shape; 
            }; //設(shè)置鼠標(biāo)經(jīng)過(guò)dom的指針形狀 
            var EventsType = {//事件類型 
              click:"click", 
              mousedown:"mousedown", 
              mouseup:"mouseup", 
              mouseover:"mouseover", 
              mouseleave:"mouseleave", 
              mousemove:"mousemove", 
              DOMContentLoaded:"DOMContentLoaded", 
            }; 
            var AddEvent = function (dom, type, fun) { 
              dom.addEventListener(type, fun, false); 
            };   //添加dom對(duì)象的事件監(jiān)聽(tīng)方法 
            var AddEvent2 = function (dom, type1, fun1, type2, fun2) { 
              dom.addEventListener(type1, fun1, false); 
              dom.addEventListener(type2, fun2, false); 
            };   //一次添加dom的兩個(gè)事件監(jiān)聽(tīng)方法 
            var AddEvent3 = function (dom, type1, fun1, type2, fun2, type3, fun3) { 
              dom.addEventListener(type1, fun1, false); 
              dom.addEventListener(type2, fun2, false); 
              dom.addEventListener(type3, fun3, false); 
            }; //一次添加dom的三個(gè)事件監(jiān)聽(tīng)方法 
            var DelEvent = function (dom, type, fun) { 
              dom.removeEventListener(type, fun, false); 
            }; // 刪除dom對(duì)象的事件監(jiān)聽(tīng)方法 
            var DelEvent2 = function (dom, type1, fun1, type2, fun2) { 
              dom.removeEventListener(type1, fun1, false); 
              dom.removeEventListener(type2, fun2, false); 
            }; //一次刪除dom對(duì)象的兩個(gè)事件監(jiān)聽(tīng)方法 
            var DelEvent3 = function (dom, type1, fun1, type2, fun2, type3, fun3) { 
              dom.removeEventListener(type1, fun1, false); 
              dom.removeEventListener(type2, fun2, false); 
              dom.removeEventListener(type3, fun3, false); 
            }; //一次刪除dom對(duì)象的三個(gè)事件監(jiān)聽(tīng)方法 
            var inArray = function (str, arr) { 
              for (var i = 0; i < arr.length; i++) { 
                if (str == arr[i]) { 
                  return true; 
                } 
              } 
              return false; 
            }; // 判斷字符串str是否存在于數(shù)組arr 
            var cannotselect = function () { 
              window.getSelection().removeAllRanges(); 
            };  //頁(yè)面元素(文字、圖片等)不能被選中 
            var setStyle = function (dom, styleName, styleValue) { 
              dom.setAttribute("style", styleName + ":" + styleValue + ";"); 
            }; //設(shè)置dom的 一個(gè)style 屬性值 
            var setStyle2 = function (dom, styleName1, styleValue1, styleName2, styleValue2) { 
              dom.setAttribute("style", styleName1 + ":" + styleValue1 + ";" + styleName2 + ":" + styleValue2 + ";"); 
            };//一次設(shè)置dom的 兩個(gè)style 屬性值 
            var delStyle = function (dom, styleName) { 
              dom.removeAttribute("style", styleName); 
            };//刪除dom的 一個(gè)style 屬性值 
            var delStyle2 = function (dom, styleName1, styleName2) { 
              dom.removeAttribute("style", styleName1); 
              dom.removeAttribute("style", styleName2); 
            };//一次刪除dom的 兩個(gè)style 屬性值 
            var setAttr = function (dom, attrName, attrValue) { 
              dom.setAttribute(attrName, attrValue); 
            };// 設(shè)置dom的 一個(gè)屬性值 
            var setAttr2 = function (dom, attrName1, attrValue1, attrName2, attrValue2) { 
              dom.setAttribute(attrName1, attrValue1); 
              dom.setAttribute(attrName2, attrValue2); 
            };//一次設(shè)置dom的 兩個(gè)屬性值 
            var delAttr = function (dom, attrName) { 
              dom.removeAttribute(attrName); 
            };//刪除dom的 一個(gè)屬性值 
            var delAttr2 = function (dom, attrName1, attrName2) { 
              dom.removeAttribute(attrName1); 
              dom.removeAttribute(attrName2); 
            };//刪除dom 的兩個(gè)屬性值 
            var Hide = function (dom) { 
              dom.style.display = "none"; 
            };//  隱藏dom 
            var Hide3 = function (dom1,dom2,dom3) { 
              dom1.style.display = "none"; 
              dom2.style.display = "none"; 
              dom3.style.display = "none"; 
            };//  隱藏3個(gè)dom 
            var Show = function (dom) { 
              dom.style.display = "inline"; 
            }; // 顯示dom 
            var Show3 = function (dom1, dom2, dom3) { 
              dom1.style.display = "inline"; 
              dom2.style.display = "inline"; 
              dom3.style.display = "inline"; 
            };//  顯示3個(gè)dom 
            /* cxc.js 頻繁操作公共接口 */
            /* AJAX 接口 */
            var url, method, msg; 
            var xmlReq = new XMLHttpRequest(); 
            var AJAX = function (url, method, msg, callback) { 
              xmlReq.open(method, url, true); 
              xmlReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
              xmlReq.onreadystatechange = function () { 
                if (xmlReq.readyState == 4) { 
                  if (xmlReq.status == 200) { 
                    callback(); 
                  } 
                  else { 
                    A("ajax status is " + xmlReq.status); 
                  } 
                } 
              }; 
              xmlReq.send(msg); 
            }; 
            /* AJAX 接口 */
            /* 入口 */
            var start = function (fun) { 
              var begin = function () { 
                DelEvent(document, EventsType.DOMContentLoaded, begin); 
                fun(); 
              }; 
              AddEvent(document, EventsType.DOMContentLoaded, begin); 
            }; 
            /* 入口 */
            /* 環(huán)境 */
            var screenW = window.innerWidth; 
            var screenH = window.innerHeight; 
            /* 環(huán)境 */
            ccp.js
            var cfg = { 
              imgtype: ["image/jpeg", "image/png", "image/gif", "image/bmp"], 
              imgsize: 5 * 1024 * 1024, 
              varied_divMIN: 50, 
              varied_divDEFAULT: 100, 
              needWH:0, 
            }; 
            var dom = { 
              body: null, 
              SelectPicture: null, 
              upfile: null, 
              pre: null, 
              ccp: null, 
              bt: null, 
              prea: null, 
              preb: null, 
              prec: null, 
              ctna: null, 
              ctnb: null, 
              ctnc: null, 
              imga: null, 
              imgb: null, 
              imgc: null, 
              Y_OUT: null, 
              N_OUT: null, 
              Y: null, 
              N: null, 
              ctn: null, 
              black_cover: null, 
              fixed_img: null, 
              varied_div: null, 
              varied_div_img: null, 
              TopLeft: null, 
              TopRight: null, 
              BottomRight: null, 
              BottomLeft: null, 
            }; 
            var ccp = { 
              SelectPictureW: null, 
              SelectPictureH: null, 
              SelectPictureP1: 9, 
              SelectPictureP2: 4, 
              SelectPictureL: null, 
              SelectPictureT: null, 
              SelectPictureFontSize: null, 
              /////////////////////////// 
              file: null, 
              imgtype: null, 
              imgsize: null, 
              /////////////////////////// 
              imgW: null, 
              imgH: null, 
              imgN: null, 
              imgURL: null, 
              ////////////////////////// 
              preW: null, 
              preH: null, 
              ccpW: null, 
              ccpH: null, 
              btW: null, 
              btH: null, 
              ///////////////////////// 
              pre4: null, 
              preaL: null, 
              preaT: null, 
              preaWH: null, 
              prebL: null, 
              prebT: null, 
              prebWH: null, 
              precL: null, 
              precT: null, 
              precWH: null, 
              ctnLT: 3, 
              ctnaWH: null, 
              ctnbWH: null, 
              ctncWH: null, 
              ////////////////////////// 
              YN3: null, 
              YN_OUTWH: null, 
              YNWH: null, 
              YN_OUTR: null, 
              Y_OUTT: null, 
              N_OUTT: null, 
              YNLT1: 25, 
              YNLT2: 20, 
              ////////////////////////// 
              ctnL: null, 
              ctnT: null, 
              black_coverL: null, 
              black_coverT: null, 
              ///////////////////////// 
              varied_divL: null, 
              varied_divT: null, 
              varied_divWH: null, 
              varied_divMaxL: null, 
              varied_divMaxT: null, 
              varied_div_imgWH: null, 
              varied_div_imgL: null, 
              varied_div_imgT: null, 
              ///////////////////////// 
              imgaW: null, 
              imgaH: null, 
              imgaL: null, 
              imgaT: null, 
              imgbW: null, 
              imgbH: null, 
              imgbL: null, 
              imgbT: null, 
              imgcW: null, 
              imgcH: null, 
              imgcL: null, 
              imgcT: null, 
              ///////////////////////// 
            }; 
            var GET_DOM = function () { 
              dom.body = document.body; 
              dom.pre = $("pre"); 
              dom.ccp = $("ccp"); 
              dom.bt = $("bt"); 
              dom.SelectPicture = $("SelectPicture"); 
              dom.prea = $("prea"); 
              dom.preb = $("preb"); 
              dom.prec = $("prec"); 
              dom.ctna = $("ctna"); 
              dom.ctnb = $("ctnb"); 
              dom.ctnc = $("ctnc"); 
              dom.imga = $("imga"); 
              dom.imgb = $("imgb"); 
              dom.imgc = $("imgc"); 
              dom.Y_OUT = $("Y_OUT"); 
              dom.N_OUT = $("N_OUT"); 
              dom.Y = $("Y"); 
              dom.N = $("N"); 
              dom.ctn = $("ctn"); 
              dom.black_cover = $("black_cover"); 
              dom.fixed_img = $("fixed_img"); 
              dom.varied_div = $("varied_div"); 
              dom.varied_div_img = $("varied_div_img");   
              dom.TopLeft = $("TopLeft"); 
              dom.TopRight = $("TopRight"); 
              dom.BottomRight = $("BottomRight"); 
              dom.BottomLeft = $("BottomLeft"); 
            }; 
            var INIT_DOM = function () { 
              setStyle2(dom.body, "width", screenW + "px", "height", screenH + "px"); 
              dom.body.style.backgroundImage = get_random_bgimg(7);///////////////////// 
              set_SelectPictureW(Math.floor(screenW / ccp.SelectPictureP1)); 
              AddEvent2(dom.SelectPicture, EventsType.mouseover, SelectPicture_mouseover, EventsType.mouseleave, SelectPicture_mouseleave); 
              AddEvent(dom.SelectPicture, EventsType.click, SelectPicture_click);///////////////////// 
              ccp.preH = ccp.ccpH = ccp.btH = screenH - 2; 
              ccp.ccpW = screenH + 100 - 2; 
              ccp.preW = Math.ceil((screenW - (ccp.ccpW + 2)) / 2) - 2; 
              ccp.btW = screenW - (ccp.ccpW + 2) - (ccp.preW + 2) - 2; 
              setStyle2(dom.pre, "width", ccp.preW + "px", "height", ccp.preH + "px"); 
              setStyle2(dom.ccp, "width", ccp.ccpW + "px", "height", ccp.ccpH + "px"); 
              setStyle2(dom.bt, "width", ccp.btW + "px", "height", ccp.btH + "px"); 
              Hide3(dom.pre, dom.ccp, dom.bt);///////////////////// 
            }; 
            var EVENTS = function () { 
              AddEvent(dom.varied_div, EventsType.mousedown, varied_div_mousedown);//varied_div 
              AddEvent(dom.TopLeft, EventsType.mousedown, TopLeft_mousedown);//TopLeft 
              AddEvent(dom.TopRight, EventsType.mousedown, TopRight_mousedown);//TopRight 
              AddEvent(dom.BottomRight, EventsType.mousedown, BottomRight_mousedown);//BottomRight 
              AddEvent(dom.BottomLeft, EventsType.mousedown, BottomLeft_mousedown);//BottomLeft 
              AddEvent(dom.Y, EventsType.click, Y_click);//Y 
              AddEvent(dom.N, EventsType.click, N_click);//N 
            }; 
            var END = function () { 
              AddEvent(document, EventsType.mousemove, cannotselect); 
            }; 
            start(function () { 
              GET_DOM(); 
              INIT_DOM(); 
              EVENTS(); 
              END(); 
            }); 
            fun.js
            var get_random_bgimg = function (n) { 
              var m = Math.floor(Math.random() * n); 
              var r = "url(Images/bg" + 6 + ".png)"; 
              return r; 
            }; 
            var set_SelectPictureW = function (W) { 
              ccp.SelectPictureW = W; 
              ccp.SelectPictureH = Math.floor(ccp.SelectPictureW / ccp.SelectPictureP2); 
              ccp.SelectPictureL = Math.floor((screenW - ccp.SelectPictureW) / 2); 
              ccp.SelectPictureT = Math.floor((screenH - ccp.SelectPictureH) / 2); 
              ccp.SelectPictureFontSize = Math.floor(ccp.SelectPictureH / 1.5); 
              setStyle(dom.SelectPicture, "font-size", ccp.SelectPictureFontSize + "px"); 
              setLTWH(dom.SelectPicture, ccp.SelectPictureL, ccp.SelectPictureT, ccp.SelectPictureW, ccp.SelectPictureH); 
            }; 
            var SelectPicture_mouseover = function () { 
              set_SelectPictureW(ccp.SelectPictureW + 15); 
            }; 
            var SelectPicture_mouseleave = function () { 
              set_SelectPictureW(ccp.SelectPictureW - 15); 
            }; 
            /////////////////////////////////////////////////// 
            var downX, downY, oldL, oldT, tempWH, tempL, tempT, dxMax, tempMaxL, tempMaxT; 
            var varied_divLimit = function () { 
              if (ccp.varied_divL < 0) 
                ccp.varied_divL = 0; 
              else if (ccp.varied_divL > ccp.varied_divMaxL) 
                ccp.varied_divL = ccp.varied_divMaxL; 
              if ((ccp.varied_divT < 0)) 
                ccp.varied_divT = 0; 
              else if (ccp.varied_divT > ccp.varied_divMaxT) 
                ccp.varied_divT = ccp.varied_divMaxT; 
            }; 
            var varied_div_mousedown = function (e) { 
              if (e.button > 0) { 
                varied_div_mouseup(); 
                return false; 
              } 
              e.preventDefault && e.preventDefault(); 
              downX = e.clientX; 
              downY = e.clientY; 
              oldL = ccp.varied_divL; 
              oldT = ccp.varied_divT; 
              AddEvent2(document, EventsType.mouseup, varied_div_mouseup, EventsType.mousemove, doc_varied_div_mousemove); 
            }; 
            var doc_varied_div_mousemove = function (e) { 
              ccp.varied_divL = oldL + e.clientX - downX; 
              ccp.varied_divT = oldT + e.clientY - downY; 
              varied_divLimit(); 
              setLT(dom.varied_div, ccp.varied_divL, ccp.varied_divT); 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var varied_div_mouseup = function () { 
              DelEvent2(document, EventsType.mouseup, varied_div_mouseup, EventsType.mousemove, doc_varied_div_mousemove); 
            }; 
            //////////////////////////////////////////////////// 
            var TopLeft_mousedown = function (e) { 
              if (e.button > 0) { 
                TopLeft_mouseup(); 
                return false; 
              } 
              e.preventDefault && e.preventDefault(); 
              downX = e.clientX; 
              downY = e.clientY; 
              oldL = ccp.varied_divL; 
              oldT = ccp.varied_divT; 
              tempWH = ccp.varied_divWH; 
              tempL = ccp.varied_divL; 
              tempT = ccp.varied_divT; 
              tempMaxL = ccp.varied_divMaxL; 
              tempMaxT = ccp.varied_divMaxT; 
              dxMax = tempL >= tempT ? tempT : tempL; 
              AddEvent2(document, EventsType.mouseup, TopLeft_mouseup, EventsType.mousemove, doc_TopLeft_mousemove); 
            }; 
            var doc_TopLeft_mousemove = function (e) { 
              varied_div_mouseup();//移動(dòng)事件屏蔽,非常重要 
              var dx = e.clientY - downY; 
              if (dx < 0 && Math.abs(dx) > dxMax) { 
                dx = -dxMax; 
              } 
              else if (dx > 0 && dx > tempWH - cfg.varied_divMIN) { 
                dx = tempWH - cfg.varied_divMIN; 
              } 
              ccp.varied_divMaxL = tempMaxL + dx; 
              ccp.varied_divMaxT = tempMaxT + dx; 
              ccp.varied_divL = oldL + dx; 
              ccp.varied_divT = oldT + dx; 
              ccp.varied_divWH = tempWH - dx; 
              setLTWH(dom.varied_div, ccp.varied_divL, ccp.varied_divT, ccp.varied_divWH, ccp.varied_divWH); 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var TopLeft_mouseup = function () { 
              DelEvent2(document, EventsType.mouseup, TopLeft_mouseup, EventsType.mousemove, doc_TopLeft_mousemove); 
            }; 
            //////////////////////////////////////////////////// 
            var TopRight_mousedown = function (e) { 
              if (e.button > 0) { 
                TopRight_mouseup(); 
                return false; 
              } 
              e.preventDefault && e.preventDefault(); 
              downX = e.clientX; 
              downY = e.clientY; 
              oldL = ccp.varied_divL; 
              oldT = ccp.varied_divT; 
              tempWH = ccp.varied_divWH; 
              tempL = ccp.imgW - ccp.varied_divL - ccp.varied_divWH; 
              tempT = ccp.varied_divT; 
              tempMaxL = ccp.varied_divMaxL; 
              tempMaxT = ccp.varied_divMaxT; 
              dxMax = tempL >= tempT ? tempT : tempL; 
              AddEvent2(document, EventsType.mouseup, TopRight_mouseup, EventsType.mousemove, doc_TopRight_mousemove); 
            }; 
            var doc_TopRight_mousemove = function (e) { 
              varied_div_mouseup();//移動(dòng)事件屏蔽,非常重要 
              var dx = e.clientY - downY; 
              if (dx < 0 && Math.abs(dx) > dxMax) { 
                dx = -dxMax; 
              } 
              else if (dx > 0 && dx > tempWH - cfg.varied_divMIN) { 
                dx = tempWH - cfg.varied_divMIN; 
              } 
              ccp.varied_divMaxL = tempMaxL + dx; 
              ccp.varied_divMaxT = tempMaxT + dx; 
              ccp.varied_divL = oldL; 
              ccp.varied_divT = oldT + dx; 
              ccp.varied_divWH = tempWH - dx; 
              setLTWH(dom.varied_div, ccp.varied_divL, ccp.varied_divT, ccp.varied_divWH, ccp.varied_divWH); 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var TopRight_mouseup = function () { 
              DelEvent2(document, EventsType.mouseup, TopRight_mouseup, EventsType.mousemove, doc_TopRight_mousemove); 
            }; 
            /////////////////////////////////////////////////// 
            var BottomRight_mousedown = function (e) { 
              if (e.button > 0) { 
                BottomRight_mouseup(); 
                return false; 
              } 
              e.preventDefault && e.preventDefault(); 
              downX = e.clientX; 
              downY = e.clientY; 
              oldL = ccp.varied_divL; 
              oldT = ccp.varied_divT; 
              tempWH = ccp.varied_divWH; 
              tempL = ccp.imgW - ccp.varied_divL - ccp.varied_divWH; 
              tempT = ccp.imgH - ccp.varied_divT - ccp.varied_divWH; 
              tempMaxL = ccp.varied_divMaxL; 
              tempMaxT = ccp.varied_divMaxT; 
              dxMax = tempL >= tempT ? tempT : tempL; 
              AddEvent2(document, EventsType.mouseup, BottomRight_mouseup, EventsType.mousemove, doc_BottomRight_mousemove); 
            }; 
            var doc_BottomRight_mousemove = function (e) { 
              varied_div_mouseup();//移動(dòng)事件屏蔽,非常重要 
              var dx = e.clientY - downY; 
              if (dx > 0 && dx > dxMax) { 
                dx = dxMax; 
              } 
              else if (dx < 0 && Math.abs(dx) > tempWH - cfg.varied_divMIN) { 
                dx = -(tempWH - cfg.varied_divMIN); 
              } 
              ccp.varied_divMaxL = tempMaxL - dx; 
              ccp.varied_divMaxT = tempMaxT - dx; 
              ccp.varied_divL = oldL; 
              ccp.varied_divT = oldT; 
              ccp.varied_divWH = tempWH + dx; 
              setLTWH(dom.varied_div, ccp.varied_divL, ccp.varied_divT, ccp.varied_divWH, ccp.varied_divWH); 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var BottomRight_mouseup = function () { 
              DelEvent2(document, EventsType.mouseup, BottomRight_mouseup, EventsType.mousemove, doc_BottomRight_mousemove); 
            }; 
            /////////////////////////////////////////////////// 
            var BottomLeft_mousedown = function (e) { 
              if (e.button > 0) { 
                BottomLeft_mouseup(); 
                return false; 
              } 
              e.preventDefault && e.preventDefault(); 
              downX = e.clientX; 
              downY = e.clientY; 
              oldL = ccp.varied_divL; 
              oldT = ccp.varied_divT; 
              tempWH = ccp.varied_divWH; 
              tempL = ccp.varied_divL; 
              tempT = ccp.imgH - ccp.varied_divT - ccp.varied_divWH; 
              tempMaxL = ccp.varied_divMaxL; 
              tempMaxT = ccp.varied_divMaxT; 
              dxMax = tempL >= tempT ? tempT : tempL; 
              AddEvent2(document, EventsType.mouseup, BottomLeft_mouseup, EventsType.mousemove, doc_BottomLeft_mousemove); 
            }; 
            var doc_BottomLeft_mousemove = function (e) { 
              varied_div_mouseup();//移動(dòng)事件屏蔽,非常重要 
              var dx = e.clientY - downY; 
              if (dx > 0 && dx > dxMax) { 
                dx = dxMax; 
              } 
              else if (dx < 0 && Math.abs(dx) > tempWH - cfg.varied_divMIN) { 
                dx = -(tempWH - cfg.varied_divMIN); 
              } 
              ccp.varied_divMaxL = tempMaxL - dx; 
              ccp.varied_divMaxT = tempMaxT - dx; 
              ccp.varied_divL = oldL - dx; 
              ccp.varied_divT = oldT; 
              ccp.varied_divWH = tempWH + dx; 
              setLTWH(dom.varied_div, ccp.varied_divL, ccp.varied_divT, ccp.varied_divWH, ccp.varied_divWH); 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var BottomLeft_mouseup = function () { 
              DelEvent2(document, EventsType.mouseup, BottomLeft_mouseup, EventsType.mousemove, doc_BottomLeft_mousemove); 
            }; 
            /////////////////////////////////////////////////// 
            var getDATA = function () { 
              var parameter = location.search; //獲取url中"?"符后的字串 
              if (parameter.length == 0) { 
                return 666; 
              } else { 
                var ss = parameter.split("&"); 
                url = ss[0].split("=")[1]; 
                cfg.needWH = ss[1].split("=")[1]; 
              } 
              if (url.length == 0) { 
                return 777; 
              } else if (cfg.needWH == 0) { 
                return 888; 
              } else if (cfg.needWH > 1000) { 
                return 999; 
              } 
              var canvas = document.createElement("canvas"); 
              canvas.style.display = "none"; 
              var ctx = canvas.getContext("2d"); 
              ctx.fillStyle = "#FFFFFF"; 
              canvas.width = canvas.height = cfg.needWH; 
              ctx.fillRect(0, 0, cfg.needWH, cfg.needWH); 
              var a = Math.ceil(ccp.varied_divL * ccp.imgN); 
              var b = Math.ceil(ccp.varied_divT * ccp.imgN); 
              var c = Math.ceil(ccp.varied_divWH * ccp.imgN); 
              ctx.drawImage(dom.fixed_img, a, b, c, c, 0, 0, cfg.needWH, cfg.needWH); 
              return canvas.toDataURL(ccp.imgtype, 1); 
            }; 
            var callback = function () { 
              var txt = xmlReq.responseText; 
              alert(txt); 
              window.opener = null; 
              window.open('', '_self'); 
              window.close(); 
            }; 
            var Y_click = function () { 
              var DATA = getDATA(); 
              DATA == 666 && alert("沒(méi)有參數(shù)"); 
              DATA == 777 && alert("沒(méi)有返回地址"); 
              DATA == 888 && alert("未給出返回圖片大小"); 
              DATA == 999 && alert("圖片大小不能超過(guò) 1000 X 1000"); 
              if (DATA == 666 || DATA == 777 || DATA == 888 || DATA == 999) { 
                window.opener = null; 
                window.open('', '_self'); 
                window.close(); 
              }//沒(méi)有參數(shù)或參數(shù)錯(cuò)誤關(guān)閉頁(yè)面 
              method = "post"; 
              msg = ""; 
              AJAX(url, method, "DATA=" + DATA, callback); 
            }; 
            var N_click = function () { 
              Hide3(dom.pre, dom.ccp, dom.bt); 
            }; 
            /////////////////////////////////////////////////// 
            var check_imgtype = function () { 
              if (!inArray(ccp.imgtype, cfg.imgtype)) { 
                alert("請(qǐng)選擇正確的圖片類型"); 
                return false; 
              } else { return true; } 
            }; 
            var check_imgsize = function () { 
              if (ccp.imgsize > cfg.imgsize) { 
                alert("圖片不能超過(guò)"+(cfg.imgsize/1024)/1024+"M"); 
                return false; 
              } else { return true; } 
            }; 
            var set_pre = function () { 
              ccp.preaWH = Math.round(ccp.preW * 0.6); 
              ccp.prebWH = Math.round(ccp.preW * 0.5); 
              ccp.precWH = Math.round(ccp.preW * 0.4); 
              ccp.preaL = Math.round((ccp.preW - ccp.preaWH) / 2); 
              ccp.prebL = Math.round((ccp.preW - ccp.prebWH) / 2); 
              ccp.precL = Math.round((ccp.preW - ccp.precWH) / 2); 
              ccp.pre4 = Math.round((ccp.preH - ccp.preaWH - ccp.prebWH - ccp.precWH) / 4); 
              ccp.preaT = ccp.pre4; 
              ccp.prebT = ccp.pre4 * 2 + ccp.preaWH; 
              ccp.precT = ccp.pre4 * 3 + ccp.preaWH + ccp.prebWH; 
              setLTWH(dom.prea, ccp.preaL, ccp.preaT, ccp.preaWH, ccp.preaWH); 
              setLTWH(dom.preb, ccp.prebL, ccp.prebT, ccp.prebWH, ccp.prebWH); 
              setLTWH(dom.prec, ccp.precL, ccp.precT, ccp.precWH, ccp.precWH); 
              //////////////////////////////////////////////////////////////// 
              ccp.ctnaWH = ccp.preaWH - ccp.ctnLT * 2; 
              ccp.ctnbWH = ccp.prebWH - ccp.ctnLT * 2; 
              ccp.ctncWH = ccp.precWH - ccp.ctnLT * 2; 
              setLTWH(dom.ctna, ccp.ctnLT, ccp.ctnLT, ccp.ctnaWH, ccp.ctnaWH); 
              setLTWH(dom.ctnb, ccp.ctnLT, ccp.ctnLT, ccp.ctnbWH, ccp.ctnbWH); 
              setLTWH(dom.ctnc, ccp.ctnLT, ccp.ctnLT, ccp.ctncWH, ccp.ctncWH); 
              dom.imga.src = dom.imgb.src = dom.imgc.src = ccp.imgURL; 
            }; 
            var setYN = function (dom, n) { 
              ccp.YNWH = ccp.YN_OUTWH - n * 2; 
              setStyle(dom, "font-size", Math.floor(ccp.YNWH * 0.9) + "px"); 
              setLTWH(dom, n, n, ccp.YNWH, ccp.YNWH); 
            }; 
            var Y_mouseover = function () { 
              setYN(dom.Y, ccp.YNLT2); 
            }; 
            var Y_mouseleave = function () { 
              setYN(dom.Y, ccp.YNLT1); 
            }; 
            var N_mouseover = function () { 
              setYN(dom.N, ccp.YNLT2); 
            }; 
            var N_mouseleave = function () { 
              setYN(dom.N, ccp.YNLT1); 
            }; 
            var set_bt = function () { 
              ccp.YN_OUTWH = Math.round(ccp.btW * 0.6); 
              ccp.YN_OUTR = Math.round((ccp.btW - ccp.YN_OUTWH) / 2); 
              ccp.YN3 = Math.round((ccp.btH - ccp.YN_OUTWH * 2) / 3); 
              ccp.Y_OUTT = ccp.YN3; 
              ccp.N_OUTT = ccp.YN3 * 2 + ccp.YN_OUTWH; 
              setRTWH(dom.Y_OUT, ccp.YN_OUTR, ccp.Y_OUTT, ccp.YN_OUTWH, ccp.YN_OUTWH); 
              setRTWH(dom.N_OUT, ccp.YN_OUTR, ccp.N_OUTT, ccp.YN_OUTWH, ccp.YN_OUTWH); 
              setYN(dom.Y, ccp.YNLT1); 
              setYN(dom.N, ccp.YNLT1); 
              AddEvent2(dom.Y, EventsType.mouseover, Y_mouseover, EventsType.mouseleave, Y_mouseleave); 
              AddEvent2(dom.N, EventsType.mouseover, N_mouseover, EventsType.mouseleave, N_mouseleave); 
            }; 
            var setvaried_div = function () { 
              if (ccp.imgW > ccp.imgH) { 
                ccp.varied_divWH = ccp.imgH < cfg.varied_divDEFAULT ? ccp.imgH : cfg.varied_divDEFAULT; 
              } 
              else { 
                ccp.varied_divWH = ccp.imgW < cfg.varied_divDEFAULT ? ccp.imgW : cfg.varied_divDEFAULT; 
              } 
              ccp.varied_divL = Math.round((ccp.imgW - ccp.varied_divWH) / 2); 
              ccp.varied_divT = Math.round((ccp.imgH - ccp.varied_divWH) / 2); 
              ccp.varied_divMaxL = ccp.imgW - ccp.varied_divWH; 
              ccp.varied_divMaxT = ccp.imgH - ccp.varied_divWH; 
              setLTWH(dom.varied_div, ccp.varied_divL, ccp.varied_divT, ccp.varied_divWH, ccp.varied_divWH); 
            }; 
            var setvaried_div_img = function () { 
              ccp.varied_div_imgL = -ccp.varied_divL; 
              ccp.varied_div_imgT = -ccp.varied_divT; 
              setLT(dom.varied_div_img, ccp.varied_div_imgL, ccp.varied_div_imgT); 
            }; 
            var setpreimg = function () { 
              var p1, p2, p3; 
              p1 = ccp.ctnaWH / ccp.varied_divWH; 
              p2 = ccp.ctnbWH / ccp.varied_divWH; 
              p3 = ccp.ctncWH / ccp.varied_divWH; 
              ccp.imgaW = Math.round(p1 * ccp.imgW); 
              ccp.imgaH = Math.round(p1 * ccp.imgH); 
              ccp.imgaL = Math.round(p1 * ccp.varied_div_imgL); 
              ccp.imgaT = Math.round(p1 * ccp.varied_div_imgT); 
              ccp.imgbW = Math.round(p2 * ccp.imgW); 
              ccp.imgbH = Math.round(p2 * ccp.imgH); 
              ccp.imgbL = Math.round(p2 * ccp.varied_div_imgL); 
              ccp.imgbT = Math.round(p2 * ccp.varied_div_imgT); 
              ccp.imgcW = Math.round(p3 * ccp.imgW); 
              ccp.imgcH = Math.round(p3 * ccp.imgH); 
              ccp.imgcL = Math.round(p3 * ccp.varied_div_imgL); 
              ccp.imgcT = Math.round(p3 * ccp.varied_div_imgT); 
              setLTWH(dom.imga, ccp.imgaL, ccp.imgaT, ccp.imgaW, ccp.imgaH); 
              setLTWH(dom.imgb, ccp.imgbL, ccp.imgbT, ccp.imgbW, ccp.imgbH); 
              setLTWH(dom.imgc, ccp.imgcL, ccp.imgcT, ccp.imgcW, ccp.imgcH); 
            }; 
            var set_ccp = function () { 
              ccp.ctnL = ccp.preW + 3 + Math.ceil((ccp.ccpW - ccp.imgW) / 2); 
              ccp.ctnT = 1 + Math.ceil((ccp.ccpH - ccp.imgH) / 2); 
              setLTWH(dom.ctn, ccp.ctnL, ccp.ctnT, ccp.imgW, ccp.imgH); 
              ccp.black_coverL = ccp.preW + 3; 
              ccp.black_coverT = 1; 
              setLTWH(dom.black_cover, ccp.black_coverL, ccp.black_coverT, ccp.ccpW, ccp.ccpH); 
              setLTWH(dom.fixed_img, 0, 0, ccp.imgW, ccp.imgH); 
              dom.fixed_img.src = ccp.imgURL; 
              setvaried_div(); 
              setWH(dom.varied_div_img, ccp.imgW, ccp.imgH); 
              dom.varied_div_img.src = ccp.imgURL; 
              setvaried_div_img(); 
              setpreimg(); 
            }; 
            var setStart = function () { 
              set_pre(); 
              set_bt(); 
              set_ccp(); 
              Show3(dom.pre, dom.ccp, dom.bt); 
            }; 
            var setImgWH = function (src, type) { 
              var image = new Image(); 
              image.onload = function () { 
                var width = this.width, height = this.height;//圖片的寬高 
                var p = width / height; 
                if (p > 1) { 
                  if (p > ccp.ccpW / 50) { 
                    alert("圖片寬高比不能超過(guò)" + p); 
                    return; 
                  } 
                  else { 
                    if (height < 50) { 
                      ccp.imgN = height / 50; 
                      ccp.imgH = 50; 
                      ccp.imgW = Math.round(ccp.imgH * p); 
                    } 
                    else if (width > ccp.ccpW) { 
                      ccp.imgN = width / ccp.ccpW; 
                      ccp.imgW = ccp.ccpW; 
                      ccp.imgH = Math.round(ccp.imgW / p); 
                    } 
                    else { 
                      ccp.imgN = 1; 
                      ccp.imgW = width; 
                      ccp.imgH = height; 
                    } 
                  } 
                } 
                else { 
                  if (p < 50 / ccp.ccpH) { 
                    alert("圖片寬高比不能小于" + p); 
                    return; 
                  } 
                  else { 
                    if (width < 50) { 
                      ccp.imgN = width / 50; 
                      ccp.imgW = 50; 
                      ccp.imgH = Math.round(ccp.imgW / p); 
                    } 
                    else if (height > ccp.ccpH) { 
                      ccp.imgN = height / ccp.ccpH; 
                      ccp.imgH = ccp.ccpH; 
                      ccp.imgW = Math.round(ccp.imgH * p); 
                    } 
                    else { 
                      ccp.imgN = 1; 
                      ccp.imgW = width; 
                      ccp.imgH = height; 
                    } 
                  } 
                } 
                ccp.imgURL = this.src; 
                delete image; 
                setStart(); 
              }; 
              image.onerror = function () { 
                alert("圖片已損壞,請(qǐng)上傳正確圖片"); 
              }; 
              image.src = src; 
            }; 
            var SelectPicture_click = function () { 
              dom.upfile = document.createElement("input"); 
              setAttr2(dom.upfile, "type", "file", "id", "upfile"); 
              dom.upfile.click(); 
              dom.upfile.onchange = function () { 
                ccp.file = this.files[0]; 
                ccp.imgtype = ccp.file.type; 
                if (!check_imgtype()) { 
                  return; 
                } //檢查文件類型 
                ccp.imgsize = ccp.file.size; 
                if (!check_imgsize()) { 
                  return; 
                }; //檢查圖片大小 
                var reader = new FileReader(); 
                reader.onload = function () { 
                  setImgWH(this.result, ccp.imgtype); 
                }; 
                reader.readAsDataURL(ccp.file); 
              }; 
            }; 
            ccp.css
            *{ 
              margin:0px; 
              padding:0px; 
            } 
            #SelectPicture{ 
              position:absolute; 
              border:3px solid #ff6a00; 
              border-radius:8px; 
              color:#ff6a00; 
              text-align:center; 
              font-family:'Microsoft YaHei'; 
              cursor:pointer; 
            } 
            #upfile{ 
              display:none; 
            } 
            #pre,#ccp,#bt{ 
              float:left; 
              z-index:1; 
              border:1px solid #ffffff; 
            } 
            #ccp{ 
              border:1px dashed #808080; 
              border-left:1px dashed #808080; 
              border-right:1px dashed #808080; 
            } 
            #prea,#preb,#prec{ 
              position:absolute; 
              background-color:#ff6a00; 
              border-radius:7px; 
            } 
            #ctna,#ctnb,#ctnc{ 
              position:absolute; 
              background-color:#ffffff; 
              overflow:hidden; 
            } 
            #imga,#imgb,#imgc{ 
              position:absolute; 
              left:0px; 
              top:0px; 
            } 
            #Y_OUT,#N_OUT{ 
              position:absolute; 
            } 
            #Y,#N{ 
              /* background-color:#ff6a00;*/
              position:absolute; 
              text-align:center; 
              border:3px solid #ff6a00; 
              border-radius:50%; 
              color:#ff6a00; 
              font-family:Arial; 
              cursor:pointer; 
            } 
            #ctn{ 
              position:absolute; 
              background-color:blueviolet; 
              overflow:hidden; 
            } 
            #black_cover{ 
              position:absolute; 
              background-color:black; 
              opacity:0.6; 
              z-index:3; 
            } 
            #fixed_img{ 
              position:absolute; 
            } 
            #varied_div{ 
              position:absolute; 
              z-index:4; 
              overflow: hidden; 
              cursor:move; 
            } 
            #BottomRight,#TopRight,#TopLeft,#BottomLeft { 
              background:#D6FB66; 
              display:block; 
              width:6px; 
              height:6px; 
              position:absolute; 
              z-index:5; 
              bottom:0; 
              right:0; 
              cursor:nw-resize; 
            } 
            #BottomLeft { 
              bottom:0; 
              left:0; 
              cursor:ne-resize; 
            } 
            #TopRight { 
              top:0; 
              right:0; 
              cursor:ne-resize; 
            } 
            #TopLeft { 
              top:0; 
              left:0; 
              cursor:nw-resize; 
            } 
            #varied_div_img{ 
              position:absolute; 
              z-index:5; 
            }
            以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。