最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue實(shí)現(xiàn)圖片下載點(diǎn)擊按鈕彈出本地窗口選擇自定義保存路徑功能

 更新時(shí)間:2023年12月01日 14:56:14   作者:秋石蘭  
vue前端實(shí)現(xiàn)前端下載,并實(shí)現(xiàn)點(diǎn)擊按鈕彈出本地窗口,選擇自定義保存路徑,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

vue前端實(shí)現(xiàn)前端下載,并實(shí)現(xiàn)點(diǎn)擊按鈕彈出本地窗口,選擇自定義保存路徑

直接上代碼,廢話不多說,點(diǎn)關(guān)注,不迷路

一、下載代碼

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <title></title>
    <meta name="description" content="" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <link rel="stylesheet" href="" />
  </head>
  <body>
    <a onclick="fn1()" style="cursor: pointer">aaaaaaa</a>
    <script>
      var arr = [
        "https://img0.baidu.com/it/u=4162443464,2854908495&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500",
      ];
      function downloadIamge(imgsrc, name) {
        let image = new Image();
        image.setAttribute("crossOrigin", "anonymous");
        image.onload = function () {
          let canvas = document.createElement("canvas");
          canvas.width = image.width;
          canvas.height = image.height;
          let context = canvas.getContext("2d");
          context.drawImage(image, 0, 0, image.width, image.height);
          let url = canvas.toDataURL("image/png");
          let a = document.createElement("a");
          let event = new MouseEvent("click");
          a.download = name || "photo";
          a.href = url;
          a.dispatchEvent(event);
        };
        image.src = imgsrc;
      }
      function WriteToFile(sText) {
        with (document) {
          ir = createElement("iframe");
          ir.id = "ifr";
          ir.location = "about:blank";
          ir.style.display = "none";
          body.appendChild(ir);
          with (getElementById("ifr").contentWindow.document) {
            open();
            write(sText);
            close();
            if (document.compatMode && document.all) {
              execCommand("SaveAs", false, ".txt");
            } else {
              location = "data:application/rtf," + encodeURIComponent(sText);
            }
          }
          setTimeout(function () {
            body.removeChild(ir);
          }, 1000);
        }
      }
      function fn1() {
        for (let i = 0; i < arr.length; i++) {
          downloadIamge(arr[i]);
        }
      }
    </script>
  </body>
</html>

二、別找代碼了,不用代碼就可以實(shí)現(xiàn)

以下按照步驟一步一步來
按照紅色箭頭所指,用鼠標(biāo)戳它

在這里插入圖片描述

在這里插入圖片描述

恭喜你,功能完成了

到此這篇關(guān)于vue實(shí)現(xiàn)圖片下載點(diǎn)擊按鈕彈出本地窗口選擇自定義保存路徑功能的文章就介紹到這了,更多相關(guān)vue點(diǎn)擊下載圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue和uniapp中該如何使用canvas詳解

    Vue和uniapp中該如何使用canvas詳解

    說起canvas是css3新增的標(biāo)簽,而餅狀圖又是canvas經(jīng)典,我們公司現(xiàn)在正在用uni-app框架去研發(fā)APP,下面這篇文章主要給大家介紹了關(guān)于Vue和uniapp中該如何使用canvas的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • vue3中事件處理@click的用法詳解

    vue3中事件處理@click的用法詳解

    @click指令用于監(jiān)聽元素的點(diǎn)擊事件,并在觸發(fā)時(shí)執(zhí)行相應(yīng)的處理函數(shù),在Vue3中,事件處理就可以通過@click指令來實(shí)現(xiàn),下面我們就來看看如何在Vue3中處理點(diǎn)擊事件吧
    2023-08-08
  • vue+vux?vux安裝出現(xiàn)錯誤問題及解決

    vue+vux?vux安裝出現(xiàn)錯誤問題及解決

    這篇文章主要介紹了vue+vux?vux安裝出現(xiàn)錯誤問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue?proxytable代理根路徑的同時(shí)增加其他代理方式

    vue?proxytable代理根路徑的同時(shí)增加其他代理方式

    這篇文章主要介紹了vue?proxytable代理根路徑的同時(shí)增加其他代理方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 淺談Vue插槽實(shí)現(xiàn)原理

    淺談Vue插槽實(shí)現(xiàn)原理

    vue.js的靈魂是組件,而組件的靈魂是插槽。借助于插槽,我們能最大程度上實(shí)現(xiàn)組件復(fù)用。本文主要是對插槽的實(shí)現(xiàn)機(jī)制進(jìn)行詳細(xì)概括總結(jié),在某些場景中,有一定的用處
    2021-06-06
  • vue基于viewer實(shí)現(xiàn)的圖片查看器功能

    vue基于viewer實(shí)現(xiàn)的圖片查看器功能

    這篇文章主要介紹了vue基于viewer實(shí)現(xiàn)的圖片查看器的實(shí)例代碼,非常不錯,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • vue 數(shù)據(jù)雙向綁定的實(shí)現(xiàn)方法

    vue 數(shù)據(jù)雙向綁定的實(shí)現(xiàn)方法

    這篇文章主要介紹了vue 數(shù)據(jù)雙向綁定的實(shí)現(xiàn)方法,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • 在vue-cli搭建的項(xiàng)目中增加后臺mock接口的方法

    在vue-cli搭建的項(xiàng)目中增加后臺mock接口的方法

    這篇文章主要介紹了在vue-cli搭建的項(xiàng)目中增加后臺mock接口的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • Vue.js展示AJAX數(shù)據(jù)簡單示例講解

    Vue.js展示AJAX數(shù)據(jù)簡單示例講解

    當(dāng)通過AJAX方式取回?cái)?shù)據(jù)后,使用vue.js可以完美地按一定邏輯在頁面上的展示數(shù)據(jù),代碼簡單、優(yōu)美、自然,而且便于與在用的頁面框架集成,本文給大家介紹Vue.js展示AJAX數(shù)據(jù)簡單示例
    2017-03-03
  • vue3+vite 動態(tài)引用靜態(tài)資源及動態(tài)引入assets文件夾圖片的多種方式

    vue3+vite 動態(tài)引用靜態(tài)資源及動態(tài)引入assets文件夾圖片的多種方式

    通過require動態(tài)引入, 發(fā)現(xiàn)報(bào)錯:require is not defind,這是因?yàn)?nbsp;require 是屬于 Webpack 的方法,本文給大家介紹vue3+vite 動態(tài)引用靜態(tài)資源及動態(tài)引入assets文件夾圖片的多種方式,感興趣的朋友一起看看吧
    2023-10-10

最新評論

东至县| 竹溪县| 阿尔山市| 红原县| 文水县| 葫芦岛市| 江油市| 手机| 东宁县| 兴国县| 泉州市| 隆林| 吴旗县| 思南县| 新乡市| 通河县| 黄大仙区| 揭西县| 桑日县| 呼玛县| 潼关县| 镇巴县| 汝南县| 宁南县| 新平| 常熟市| 观塘区| 集贤县| 桂林市| 郧西县| 苍溪县| 庆元县| 旺苍县| 莒南县| 花垣县| 英德市| 驻马店市| 汝州市| 张家口市| 温泉县| 富平县|