最新国产好看的视频,伊人天堂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)擊按鈕彈出本地窗口,選擇自定義保存路徑,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

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

直接上代碼,廢話不多說(shuō),點(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)

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

在這里插入圖片描述

在這里插入圖片描述

恭喜你,功能完成了

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

相關(guān)文章

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

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

    說(shuō)起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)聽(tīng)元素的點(diǎn)擊事件,并在觸發(fā)時(shí)執(zhí)行相應(yīng)的處理函數(shù),在Vue3中,事件處理就可以通過(guò)@click指令來(lái)實(shí)現(xiàn),下面我們就來(lái)看看如何在Vue3中處理點(diǎn)擊事件吧
    2023-08-08
  • vue+vux?vux安裝出現(xiàn)錯(cuò)誤問(wèn)題及解決

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

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

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

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

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

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

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

    這篇文章主要介紹了vue基于viewer實(shí)現(xiàn)的圖片查看器的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(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)目中增加后臺(tái)mock接口的方法

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

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

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

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

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

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

最新評(píng)論

怀集县| 姜堰市| 绥芬河市| 肥西县| 潞西市| 伊宁县| 安西县| 永吉县| 孟州市| 游戏| 周口市| 锡林浩特市| 成安县| 普洱| 陈巴尔虎旗| 黑龙江省| 宜阳县| 大冶市| 南丰县| 东平县| 博客| 玉环县| 乌拉特后旗| 津南区| 咸丰县| 武定县| 太仆寺旗| 留坝县| 汝州市| 永兴县| 北碚区| 章丘市| 鹤山市| 永仁县| 尤溪县| 孝感市| 哈尔滨市| 南宫市| 滕州市| 青阳县| 双峰县|