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

首頁 > 開發 > JS > 正文

基于JS實現前端壓縮上傳圖片的實例代碼

2024-05-06 16:50:54
字體:
來源:轉載
供稿:網友

具體代碼如下所示:

<!DOCTYPE html><html><head>  <meta charset="UTF-8">  <title>前端壓縮上傳圖片</title>  <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script></head><body>  <input type="file" id="picFile" onchange="readFile(this)" />  <img id="img" src=""  <script>    function readFile(obj) {      var file = obj.files[0];      //判斷類型是不是圖片       if (!/image///w+/.test(file.type)) {        alert("請確保文件為圖像類型");        return false;      }      var reader = new FileReader();      reader.readAsDataURL(file);      reader.onload = function(e) {        dealImage(this.result, { quality: 0.5 }, function(base) {          //調用          var blob = dataURLtoBlob(base);          var newFile = new File([blob], file.name, { type: file.type });          console.log(newFile)          let r = new FileReader(); //本地預覽          r.onload = function() {            $('#img').attr("src", r.result);;          }          r.readAsDataURL(newFile); //Base64          // upload(newFile);        });      }    }    //將base64轉換為blob    function dataURLtoBlob(dataurl) {      var arr = dataurl.split(','),        mime = arr[0].match(/:(.*?);/)[1],        bstr = atob(arr[1]),        n = bstr.length,        u8arr = new Uint8Array(n);      while (n--) {        u8arr[n] = bstr.charCodeAt(n);      }      return new Blob([u8arr], { type: mime });    }    function upload(file) {      var that = this;      // 創建form對象      let param = new FormData();      // 通過append向form對象添加數據      param.append('img', file);      // 文件大小      param.append('size', file.size);      for (var n in that.params) {        param.append(n, that.params[n]);      }      // 創建ajax      var xhr = new XMLHttpRequest();      xhr.onload = function() {        console.log(xhr.responseText)      }      xhr.open("POST", "yourapi", true);      // 發送表單數據      xhr.send(param);    }    /**     * 圖片壓縮,默認同比例壓縮     * @param {Object} path     * pc端傳入的路徑可以為相對路徑,但是在移動端上必須傳入的路徑是照相圖片儲存的絕對路徑     * @param {Object} obj     * obj 對象 有 width, height, quality(0-1)     * @param {Object} callback     * 回調函數有一個參數,base64的字符串數據     */    function dealImage(path, obj, callback) {      var img = new Image();      img.src = path;      img.onload = function() {        var that = this;        // 默認按比例壓縮        var w = that.width,          h = that.height,          scale = w / h;        w = obj.width || w;        h = obj.height || (w / scale);        var quality = obj.quality || 0.7; // 默認圖片質量為0.7        //生成canvas        var canvas = document.createElement('canvas');        var ctx = canvas.getContext('2d');        // 創建屬性節點        var anw = document.createAttribute("width");        anw.nodeValue = w;        var anh = document.createAttribute("height");        anh.nodeValue = h;        canvas.setAttributeNode(anw);        canvas.setAttributeNode(anh);        ctx.drawImage(that, 0, 0, w, h);        // 圖像質量        if (obj.quality && obj.quality <= 1 && obj.quality > 0) {          quality = obj.quality;        }        // quality值越小,所繪制出的圖像越模糊        var base64 = canvas.toDataURL('image/jpeg', quality);        // 回調函數返回base64的值        callback(base64);      }    }  </script></body></html>

總結

以上所述是小編給大家介紹的基于JS實現前端壓縮上傳圖片的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美三级在线| 欧美极品xxxx| 国产精品va在线播放我和闺蜜| www.99久久热国产日韩欧美.com| 欧美一级黄色网| 国产午夜精品全部视频在线播放| 亚洲精品中文字| 日韩福利伦理影院免费| 2019国产精品自在线拍国产不卡| 国产亚洲欧美日韩美女| 欧美午夜xxx| 日韩专区在线观看| 亚洲人成77777在线观看网| 97色在线视频| 亚洲午夜未删减在线观看| 国产一区二区三区丝袜| 国产一区二区三区在线观看网站| 麻豆乱码国产一区二区三区| 在线丨暗呦小u女国产精品| 成人国产亚洲精品a区天堂华泰| 日韩美女主播视频| 久久久成人的性感天堂| 久久久久久久一区二区三区| 久久久久久久久中文字幕| 国产一级揄自揄精品视频| 日本乱人伦a精品| 91av视频在线观看| 日韩中文字幕国产| 亚洲一区二区三区sesese| 国产精品日韩久久久久| 亚洲国产日韩欧美综合久久| 精品国产31久久久久久| 精品国产一区久久久| 日韩成人在线视频网站| 福利二区91精品bt7086| 中文字幕视频一区二区在线有码| 91精品视频观看| 日韩成人av网址| 这里只有视频精品| 欧美男插女视频| 秋霞av国产精品一区| 久久综合电影一区| 一道本无吗dⅴd在线播放一区| 日韩一区二区三区在线播放| 欧美与黑人午夜性猛交久久久| 久久综合国产精品台湾中文娱乐网| 午夜精品久久久久久99热| 国产精品视频1区| 国产精品福利在线观看网址| 日韩欧美在线播放| 国产精品稀缺呦系列在线| 欧美另类第一页| 久久久久久网站| 久久免费高清视频| 亚洲图片欧美午夜| 亚洲国产精品资源| 亚洲天堂久久av| 日韩欧美国产一区二区| 最近的2019中文字幕免费一页| 亚洲另类图片色| 日韩欧美国产中文字幕| 日本一区二区三区四区视频| 欧美精品福利视频| 久久久久久69| www.99久久热国产日韩欧美.com| 欧美国产精品人人做人人爱| 日韩中文字幕在线观看| 欧美裸体xxxx| 国产精品视频网址| 精品国产91久久久久久老师| 国产欧美精品xxxx另类| 中文字幕日韩综合av| 美日韩精品视频免费看| 亚洲国产成人在线视频| 中文字幕欧美精品日韩中文字幕| 亚洲国产精品字幕| 91禁国产网站| 欧美激情中文字幕在线| 欧美日韩福利在线观看| 日本一区二三区好的精华液| 国内外成人免费激情在线视频网站| 最好看的2019的中文字幕视频| 欧美国产乱视频| 91日本视频在线| 久久精品国产91精品亚洲| 欧美国产日韩精品| 欧美激情国内偷拍| 久久久成人av| 国产精品美女主播在线观看纯欲| 欧美国产日韩一区二区三区| 午夜精品蜜臀一区二区三区免费| 日韩av中文字幕在线免费观看| 麻豆国产va免费精品高清在线| 亚洲欧美日韩中文在线制服| 国产在线999| 久久久人成影片一区二区三区| 国产91露脸中文字幕在线| 亚洲第一福利在线观看| 国产精品亚洲美女av网站| 97国产精品视频人人做人人爱| 亚洲区中文字幕| 91丨九色丨国产在线| 欧美日韩中文字幕日韩欧美| 亚洲伊人成综合成人网| 欧美日韩在线另类| 国产精品黄色影片导航在线观看| 久久69精品久久久久久国产越南| 亚洲第一福利网| 国产精品视频一区二区高潮| 性欧美视频videos6一9| 高清欧美性猛交xxxx黑人猛交| 亚洲午夜av久久乱码| 精品中文字幕在线2019| 国产一区二区三区视频免费| 亚洲色图偷窥自拍| 国产乱人伦真实精品视频| 国产精品av免费在线观看| 亚洲人成网7777777国产| 亚洲www永久成人夜色| 91av在线精品| 亚洲国内高清视频| 亚洲日韩欧美视频一区| 国产精品视频久久久久| 久久久久久97| 亚洲精品国产精品久久清纯直播| 色妞久久福利网| 欧美肥臀大乳一区二区免费视频| 欧美日韩一区二区免费视频| 亚洲在线视频观看| 久久久久久久久综合| 欧美大片va欧美在线播放| 欧美极品少妇xxxxⅹ喷水| 欧洲亚洲在线视频| 久久综合亚洲社区| 亚洲成在人线av| 91在线无精精品一区二区| 欧美性感美女h网站在线观看免费| 97色伦亚洲国产| 精品视频www| 亚洲v日韩v综合v精品v| 日韩欧美在线播放| 亚洲视频axxx| 日本人成精品视频在线| 一区二区三区精品99久久| 欧日韩在线观看| 日韩在线观看免费全集电视剧网站| 欧美大胆a视频| 一区二区三区黄色| 久久国产精品久久久久| 日韩国产高清污视频在线观看| 少妇高潮久久久久久潘金莲| 国产精品美女久久久久av超清| 午夜精品一区二区三区在线视频| 丝袜美腿亚洲一区二区| 日韩av第一页| 日韩av在线网站| 久久精视频免费在线久久完整在线看| 日韩影视在线观看| 欧美老女人在线视频| 日韩国产精品视频| 精品国模在线视频| 午夜精品蜜臀一区二区三区免费| 亚洲成色777777在线观看影院| 日韩三级成人av网|