根據已有img實現下載

這里的img指一個<img>標簽或者一個src鏈接;

  /**
   * 只展示原理 不講究封裝
   */
  var src = getSrc();  // img的src或者其他方式獲取
  var tempImg = document.createElement('img');
  var tempLink = document.createElement('img');

  img.onload = function() {
    var tempCanvas = document.createElement('canvas');
    var oTx = tempCanvasgetContext('2d');

    tempCanvas.width = tempImg.naturalWidth || exportImage.width;
    tempCanvas.height = tempImg.naturalHeight || exportImage.height;
    context.drawImage(exportImage, 0, 0, canvas.width, canvas.height);

    if (window.navigator.msSaveBlob) {
      window.navigator.msSaveBlob(canvas.msToBlob(), 'test.png');
    } else if ('link' in tempLink) {
      tempLink.setAttribute('src', canvas.toDataURL());
      tempLink.setAttribute('download', 'test.png');
      tempLink.click();
    } else {
      window.open( canvas.toDataURL());  // 在新窗口打開圖片
    }

    tempImg = null; tempLink=null; tempCanvas=null;
  };
  img.src = src;

至此 一個下載 就完成了;
URL.createObjectURL 可實現文本類下載;下回分解;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,969評論 19 139
  • HTML標簽解釋大全 一、HTML標記 標簽:!DOCTYPE 說明:指定了 HTML 文檔遵循的文檔類型定義(D...
    米塔塔閱讀 3,323評論 1 41
  • 轉載請聲明 原文鏈接地址 關注公眾號獲取更多資訊 第一部分 HTML 第一章 職業規劃和前景 職業方向規劃定位...
    前端進階之旅閱讀 16,621評論 32 459
  • Tesseract是一個流行的OCR(Optical Character Recognition,光學字符識別)庫...
    瘋狂的冰塊閱讀 526評論 0 0
  • 現象: 數據庫兩節點中:select sysdate from dual;返回時間比OS date時間晚了13小時...
    DBA閱讀 935評論 0 0