您的位置:首页 > 其它

canvas.toDataURL image/png 报错处理方法推荐

2016-05-12 18:23 399 查看
问题背景:

遇到一个需求,要对播放的视频进行截图,视频使用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.

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

解决方案:

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

原文地址:https://www.geek-share.com/detail/2639480181.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  canvas.toDataURL PNG