Rumah  >  Artikel  >  hujung hadapan web  >  canvas.toDataURL image/png 报错应该怎么处理

canvas.toDataURL image/png 报错应该怎么处理

php中世界最好的语言
php中世界最好的语言asal
2018-01-23 10:43:252810semak imbas

这次给大家带来canvas.toDataURL image/png 报错应该怎么处理,处理canvas.toDataURL image/png 报错的注意事项有哪些,下面就是实战案例,一起来看一下。

问题背景:

遇到一个需求,要对播放的视频进行截图,视频使用video标签来播放,然后点击视频播放区域时截取实时的帧图片

代码很简单如下:

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);

问题提示:

Uncaught SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

经过查阅和分析,发现这个其实是由于视频文件所在的域和图片和页面所在域不同,出现跨域传输的问题。

解决方案:

将视频文件放到页面所在域下。

相信看了这些案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

相关阅读:

怎样让移动端的网页内容自适应

table表格中的内容溢出应该如何处理

怎么实现获取textarea的动态剩余字数

Atas ialah kandungan terperinci canvas.toDataURL image/png 报错应该怎么处理. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn