javascript和HTML中的动画
Animation in javascript and HTML
我正在尝试用javascript创建一个动画。
我创建了一个画布
<canvas id = "animation" width="1130" height="222"></canvas>
我想做的是添加3个图像(+1个是背景(,在每一秒中,我想显示1个图像,隐藏另外2个图像。我现在拥有的是:
var canvas = document.getElementById('animation');
context = canvas.getContext('2d');
background = new Image();
background.src = 'images/background.png';
background.onload = function(){
context.drawImage(background, 0, 0);
}
var image1 = new Image();
image1.src = 'images/image1.png';
image1.onload = function(){
context.drawImage(image1, 895, 61);
}
var image2 = new Image();
image2.src = 'images/image2.png';
image2.onload = function(){
context.drawImage(image2, 895, 61);
}
var image3 = new Image();
image3.src = 'images/image3.png';
image3.onload = function(){
context.drawImage(image3, 895, 61);
}
image1.style.visibility = "visible";
image2.style.visibility = "hidden";
image3.style.visibility = "hidden";
setTimeout(function(){
image1.style.visibility = "hidden";
image2.style.visibility = "visible";
image3.style.visibility = "hidden";
}, 1000);
setTimeout(function(){
image1.style.visibility = "hidden";
image3.style.visibility = "visible";
image2.style.visibility = "hidden";
}, 2000);
setTimeout(function(){
image3.style.visibility = "hidden";
image1.style.visibility = "visible";
image2.style.visibility = "hidden";
}, 3000);
但是它不起作用。所有这些都显示在屏幕上
您试图在这里混合两种不同的东西:画布和CSS。
画布的工作原理就像(惊奇!(画布:这意味着一旦你在那里画了一些东西,它就会一直呆在那里,直到你在上面画了其他东西。因此,在内存中更改图像的css不会有任何影响。
您有两种选择:DOM路由,只需在没有画布的情况下将图像插入DOM中,就可以更改它们的样式;或者canvas路由,调用context.drawImage INSIDE各种setTimeout
,这样您就可以每秒绘制一个新图像。
相关文章:
- 如何设置html元素填充的动画
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- Javascript内部HTML动画
- 在划桨点击时更改 HTML 画布乒乓动画中圆圈的颜色
- HTML 5 画布键控事件动画
- HTML-SVG文件动画不适用于主机,但适用于本地
- Edge动画:如何将javascript移动到html中
- Html画布计时动画
- 使用jquery为html元素文本的每个字符设置动画
- PhoneGap HTML慢速动画
- 如果不使用HTML按钮,就无法通过编程方式触发SVG动画
- 可以使用jQuery'移动HTML背景吗;s设置动画
- HTML画布-使动画一次发生一个,而不是同时发生多个
- javascript函数和HTML中的文本转换/动画onclick
- 动画 HTML 背景图像淡入淡出
- 动画HTML文本更改jQuery
- 通过内部时间轴- Adobe动画- HTML 5访问主时间轴
- 分析器酒吧动画HTML音频API不工作
- 加载外部javascript不起作用,尝试用Textillate动画HTML元素
- 我如何用不同的按钮制作不同的精灵动画?(HTML / CSS)