html2canvas圖片跨域問題圖文詳解
今天遇到的一個需求,就是將自己寫的html內(nèi)容轉(zhuǎn)化成圖片,并下載到本地,功能實現(xiàn)了,但是有一個小問題,就是我們后端給我返回的圖片,我下載的時候拿不到
1.html寫出來的樣式
2.利用html2canvas插件下載下來的圖片
出現(xiàn)的問題:不顯示 后端返回給我的圖片
html2canvas圖片跨域問題,是由于canvas自身的設(shè)計,加載的是本地的資源,對跨域資源默認是不加載的。
3.解決方法
<img :src="sharedata.data.imageUrl" crossorigin="anonymous">
let downimg= ()=>{ setTimeout(()=>{ proxy.$nextTick(()=>{ html2canvas(document.querySelector('#img'),{ useCORS: true }).then(canvas => { var url = canvas.toDataURL() //把canvas轉(zhuǎn)成base64 document.querySelector('#downimg').href = url document.querySelector('#downimg').download = "我的持倉報告.png" document.querySelector('#downimg').click() }) }) },2000) }
重點:
1. img標簽的crossorigin="anonymous"
2. useCORS: true
以上2個屬性缺一不可
通過上面的兩行代碼就能解決html2canvas圖片跨域問題
如果想要了解怎么將html內(nèi)容轉(zhuǎn)化成圖片并進行下載,可參考
vue將html內(nèi)容轉(zhuǎn)為圖片并下載到本地
總結(jié)
到此這篇關(guān)于html2canvas圖片跨域問題的文章就介紹到這了,更多相關(guān)html2canvas圖片跨域內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript實現(xiàn)表格表單的隨機選擇和簡單的隨機點名
本文主要介紹了JavaScript實現(xiàn)表格表單的隨機選擇和簡單的隨機點名,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08用js統(tǒng)計用戶下載網(wǎng)頁所需時間的腳本
下面的方法是個不錯的思路,建議對于js感興趣的朋友,推薦看2008-10-10javascript:google 向上向下滾動特效,兼容IE6,7,8,FF
這個代碼是我之前帶網(wǎng)上找的,因為今天再次用到,所以記錄下來,免得以后都找不到,我現(xiàn)在想去搜它的說明文檔都搜不到!2010-08-08js中一個函數(shù)獲取另一個函數(shù)返回值問題探討
在本文將為大家詳細探討下js中一個函數(shù)獲取另一個函數(shù)返回值問題,比較模糊的朋友可以學(xué)習(xí)下哦2013-11-11Bootstrap教程JS插件滾動監(jiān)聽學(xué)習(xí)筆記分享
這篇文章主要為大家分享了Bootstrap教程JS插件滾動監(jiān)聽學(xué)習(xí)筆記,內(nèi)容很詳細,感興趣的小伙伴們可以參考一下2016-05-05