使用任何动画更改 SPAN 类
Change SPAN class with any animation
我的控制器中有二维数组,我使用以下代码显示:
<div class="line"
ng-repeat="line in grid.cells track by $index">
<span class="cell"
ng-class="{c0:(cell==0),c2:(cell==2),c4:(cell==4),c8:(cell==8),c16:(cell==16),c32:(cell==32),c64:(cell==64),c128:(cell==128),c256:(cell==256),c512:(cell==512)}"
ng-repeat="cell in line track by $index">
{{ display_value(cell); }}
</span>
</div>
在这里,我正在使用ng类更改SPAN的类。
这是 CSS 的一部分:
span.c0 {
background-color: #ccc0b3;
color: #776e65;
}
span.c2 {
background-color: #eee4da;
color: #776e65;
}
用户按下按钮并更改控制器中的数组,视图自动更新:单元格值更改 -> span 类更改 -> SPAN 颜色更改。 但这种变化非常快
在这种情况下,如何使用一些动画来减慢更改速度? 例如,像这样的东西:http://gabrielecirulli.github.io/2048/. 或者一些淡入淡出效果。 我需要使用 angular 的指令还是 CSS 的问题?
如果我理解正确,您只需要 css 过渡。
下面是一些示例 css:
.item
{
transition-property: background-color;
transition-duration: 1s;
}
.item.c1
{
background-color: green;
}
.item.c2
{
background-color: blue;
}
这样的 HTML:
<div class="row">
<div class="item c1"></div>
<div class="item c1"></div>
<div class="item c1"></div>
<div class="item c1"></div>
</div>
这只是一些用于切换类更改的示例 js
var elements = document.querySelectorAll(".row .item");
setInterval(function(){
for(var a=0; a<elements.length; a++){
elements[a].classList.toggle("c1");
elements[a].classList.toggle("c2");
}
}, 2500);
这是一个jsFiddle演示:http://jsfiddle.net/ychk4g7h/
相关文章:
- 如何设置html元素填充的动画
- 使用Clipboard.js复制span文本
- 如何使用动画实现纸张推车
- 如何在生成下载文件时显示加载动画
- 剑道网格jQuery动画()问题
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- jQuery Lazy加载动画滚动
- jquery动画可以通过编程链接吗
- Javascript将数学动画化
- 动画.CSS重播
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- 如何使用jQuery在动画中期加速动画
- 使用数据上的角度更改设置集合的第一个元素的动画
- 如何使用css动画/javascript使具有背景图像的元素出现
- 如何使用css动画从中心增加边界线
- JQuery动画延长容器不起作用
- 使用任何动画更改 SPAN 类
- Span元素不从jQuery运行动画
- Span文本隐藏的动画DIV尽管z索引
- 在Dojo中设置DIV或SPAN宽度的动画