- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在将视频绘制到 Canvas 上,然后使用混合模式在其上绘制另一幅图像。到目前为止,我的视频适用于 chrome,但不适用于 firefox 或 safari。当我用 Firefox 打开时,我会看到混合 Canvas 一秒钟,然后它就消失了。当我在 safari 中查看时,它显示顶部图像(这是一张脸)
我有一个 mp4 和一个 webm 视频上传到我的网站,当我检查代码并显示视频时,我可以看到它实际上是在 firefox 中播放,这令人困惑,因为它就像找到了图像和视频数据?
我需要做些什么才能让视频在所有浏览器上播放吗?
下面是我正在使用的代码,这里是网站的链接(目前只能在 chrome 中正常工作)- http://chrisgjones.com/category/double-exposure/
var img1 = document.getElementById('img1'),
bg = document.getElementById('img2'),
canvas = document.getElementById("canvas"),
video = document.getElementById('video');
context = canvas.getContext("2d"),
blendMode = "multiply";
context.globalCompositeOperation = "source-over"; // dont apply blending to bg image
video.addEventListener('play', function () {
var $this = this; //cache
(function loop() {
if (!$this.paused && !$this.ended) {
context.drawImage($this, 0, 0, canvas.width, canvas.height);
setTimeout(loop, 1000 / 30); // drawing at 30fps
context.globalCompositeOperation = blendMode;
context.drawImage(img1, 0, 0, canvas.width, canvas.height);
}
})();
}, 0);
$(window).load(function(){
video.play();
});
最佳答案
我猜你指的是 setInterval 而不是 setTimeout。但无论如何,最好使用 requestAnimationFrame。
关于javascript - 在 HTML canvas 上绘制的视频只能在 chrome 中播放,即使使用 webm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24236598/
有一条(相对)众所周知的 Perl 公理:“只有 Perl 可以解析 Perl”。我想知道 Perl 6 是否仍然如此? 扩大讨论...考虑到 PyPy 最近的更新,我想到了这个问题。 Perl 独特
这是设置。在上一个问题中,我发现我可以通过子组件中的状态传递对象属性,然后使用 componentDidUpdate 获取该对象属性。在这种情况下,状态和属性都称为到达。 这是基本代码... expo
我运行的是 10.5.2 社区版。我已经标记了 源/主要/资源 作为源目录。我可以右键单击并“编译”某些文件,据我所知,这意味着 IDE 将文件复制到与发送类文件的“com.mydomain.pack
我是一名优秀的程序员,十分优秀!