canvas.toDataURL image/png 報(bào)錯(cuò)處理方法推薦
問(wèn)題背景:
遇到一個(gè)需求,要對(duì)播放的視頻進(jìn)行截圖,視頻使用video標(biāo)簽來(lái)播放,然后點(diǎn)擊視頻播放區(qū)域時(shí)截取實(shí)時(shí)的幀圖片。
代碼很簡(jiǎn)單如下:
- var video = document.getElementById('video');
- var canvas = document.getElementById('canvas');
- var ctx = canvas.getContext('2d');
- var img = document.getElementById('img');
- function snapshot() {
- ctx.drawImage(video,0,0);
- img.src = canvas.toDataURL('image/png');
- }
- video.addEventListener('click', snapshot, false);
問(wèn)題提示:
Uncaught SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.
經(jīng)過(guò)查閱和分析,發(fā)現(xiàn)這個(gè)其實(shí)是由于視頻文件所在的域和圖片和頁(yè)面所在域不同,出現(xiàn)跨域傳輸?shù)膯?wèn)題。
解決方案:
將視頻文件放到頁(yè)面所在域下。
原文地址:http://blog.csdn.net/luochao_tj/article/details/44942125
相關(guān)文章
詳解canvas.toDataURL()報(bào)錯(cuò)的解決方案全都在這了
這篇文章主要介紹了詳解canvas.toDataURL()報(bào)錯(cuò)的解決方案全都在這了,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨2020-03-31
關(guān)于canvas.toDataURL 在iOS運(yùn)行失敗的問(wèn)題解決
這篇文章主要介紹了關(guān)于canvas.toDataURL 在iOS運(yùn)行失敗的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著2020-09-16

