<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      松鼠的博客

      導航

      富文本編輯器:自己實現圖片上傳功能和圖片粘貼上傳(kindeditor)

       在需要編寫并保存帶有各種格式,圖片的文章內容時,往往需要用到富文本編輯器,這次使用到的富文本編輯器是kindeditor,使用下來功能基本足夠,在這里記錄下在使用時自己添加的功能。

       kindeditor自帶有圖片上傳功能,由于幾個原因我需要自己實現一下。

      (一)用的vue,自然是寫一個<kindeditor>組件和<uploadImg>組件;

      (1)<uploadImg>:因為有用iview作為基礎ui組件,所以上傳用的也是iview的Upload組件,:action為服務器的圖片上傳地址,在這里:on-success里的方法imgUploadSuccess,在圖片上傳服務器 成功后,向uploadImg的父組件傳遞服務器回傳的圖片地址(這邊我是再上傳阿里云)。

       

       
      (2)在kindeditor組件中加入自己寫的圖片上傳組件:<Uploadimg @getOssImg='addImgToKindeditor' :uploadByPaste='pasteData'></Uploadimg>

      引入npm install下來的內容,并添加textarea標簽:

      <textarea class="form-control" id='kindeditor' ref="kindeditor" v-model="localValue" name="content" v-loaded-callback='initKindeditor'></textarea> 

        initKindeditor函數是對kindeditor的初始化,

       

       

       

      appendHtml方法追加內容,addImgToKindeditor (data) { this.appendHtml('<img src='+data+' style="width:auto;">')  }實現將uploadImg返回的圖片地址拼接后,追加到編輯器內容后面; 

       

      (二)圖片粘貼上傳

       粘貼功能通過監聽“paste”事件,獲取clipboardData對象,取得剪貼板的內容。在這里將監聽寫在initKindeditor初始化方法的options中,options有個afterCreate,定義創建后執行的內容,如圖:

       

       代碼段:

                  this.edit.doc.body.addEventListener("paste", function (e) { 

                      let cbd = e.clipboardData;

                      let ua = window.navigator.userAgent;  

                      // 如果是 Safari 直接 return

                      if ( !(e.clipboardData && e.clipboardData.items) ) {

                          return;

                      }

                      // Mac平臺下Chrome49版本以下 復制Finder中的文件的Bug Hack掉

                      if(cbd.items && cbd.items.length === 2 && cbd.items[0].kind === "string" && cbd.items[1].kind === "file" &&

                          cbd.types && cbd.types.length === 2 && cbd.types[0] === "text/plain" && cbd.types[1] === "Files" &&

                          ua.match(/Macintosh/i) && Number(ua.match(/Chrome\/(\d{2})/i)[1]) < 49){

                          return;

                      } 

                      if(cbd.items.length == 0){

                          _this.$Message.warning('本地圖片請使用圖片上傳功能!');

                      }

                      for(let i = 0; i < cbd.items.length; i++) {

                          let item = cbd.items[i]; 

                          if(item.kind == "file"){   //循環獲得kind為file的,并用getASFile轉化賦值給blob

                              let blob = item.getAsFile();

                              if (blob.size === 0) {

                                  return;

                              }

                              //console.log(blob)// blob 就是從剪切板獲得的文件 可以進行上傳或其他操作

                              _this.pasteData = blob; 

                          }

                      }

                      e.preventDefault();  //阻止默認動作

                  }, false);

                  在我的代碼中,最后將圖片對象賦值給一個pasteData,作為Uploadimg的prop參數,監聽到pasteData的變化后,發起圖片上傳

                  uploadImg組件中:

                   watch: {

                      uploadByPaste () { //監聽粘貼內容

                          this.$refs.upload.post(this.uploadByPaste);  //發送表單

                      }

                  }

                  注意:粘貼功能的圖片來源只能是非本地圖片,現在試過微信截圖,文檔中圖片單獨復制,網頁圖片復制都可以實現復制粘貼的效果。

       

      參考文章:http://blog.ncmem.com/wordpress/2023/12/27/%e5%af%8c%e6%96%87%e6%9c%ac%e7%bc%96%e8%be%91%e5%99%a8%ef%bc%9a%e8%87%aa%e5%b7%b1%e5%ae%9e%e7%8e%b0%e5%9b%be%e7%89%87%e4%b8%8a%e4%bc%a0%e5%8a%9f%e8%83%bd%e5%92%8c%e5%9b%be%e7%89%87%e7%b2%98%e8%b4%b4/

      歡迎入群一起討論

       

       

      posted on 2023-12-27 10:32  Xproer-松鼠  閱讀(608)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 在线播放国产精品三级网| 亚洲欧洲∨国产一区二区三区 | 天堂V亚洲国产V第一次| 精品国产污污免费网站入口| 四虎成人精品永久网站| 国产欧美日韩免费看AⅤ视频 | 天堂网av最新版在线看| 韩国三级网一区二区三区| 色欲狠狠躁天天躁无码中文字幕| 亚洲人成网网址在线看| 国产亚洲精品久久久久久无亚洲| 亚洲色欲色欲WWW在线丝| 龙胜| 亚洲国语自产一区第二页| 成人一区二区不卡国产| 人人妻人人做人人爽夜欢视频| 日本边添边摸边做边爱| 日韩成人一区二区二十六区| 久久久久青草线综合超碰| 久久亚洲精品无码播放| 人妻精品动漫h无码| 在线高清免费不卡全码| 丁香婷婷激情综合俺也去| 久久亚洲精精品中文字幕| 午夜福利在线观看入口| 精品人妻少妇一区二区三区在线| 色偷偷久久一区二区三区| 亚洲色无码专区一区| 婷婷五月综合丁香在线| 怡红院一区二区三区在线| 中国CHINA体内裑精亚洲日本| 国产成人欧美一区二区三区在线| 秋霞鲁丝片成人无码| 18禁成人免费无码网站| 久久综合色一综合色88欧美| 人妻放荡乱h文| 久久久精品人妻一区二区三区 | 精品一区二区三区在线成人| 国模雨珍浓密毛大尺度150p| 亚洲精品不卡av在线播放| 亚洲人成影院在线观看|