为矩形制作动画'它的高度应该上升,而不是下降
Animate a rectangle's height to go up, not down
我对snap.svg很陌生。我有一个条形图,它包含垂直增长的矩形元素。我很难将它们从0高度设置为200高度。它们都是自上而下的动画。我需要他们自下而上。
这是我的睡衣。。
var s = Snap(".performance_chart");
Snap.load("images/performance.svg", function(f) {
bar1 = f.select(".bar1").animate({height:202.43}, 1000, mina.linear);
s.append(f);
});
下面是图表上<rect>
条形图的几个例子。第一个<rect>
设置为height=0
,所以我可以从0开始设置它的动画。
<rect class="bar bar1" x="108.3" y="246.08" width="55.21" height="0"/>
<rect class="bar bar2" x="252.89" y="251.52" width="55.21" height="77.67"/>
<rect class="bar bar3" x="308.09" y="112.25" width="55.21" height="216.93"/>
<rect class="bar bar4" x="395.5" y="237.85" width="55.21" height="91.34"/>
我读过一些关于需要使用transform
属性翻转y轴的文章,但我所做的似乎都没有达到我需要的效果。
x
和y
属性表示矩形的左上角。随着高度的增加,将顶部位置减小相同的值:
bar1 = f.select(".bar1")
.animate({
height:202.43,
y: 246.08 - 202.43
}, 1000, mina.linear);
height + y
需要保持相等,以便杆保持其位置。这里有一个例子:
<div style="display: inline-block; background: #eee;">
<h2>Start</h2>
<svg height="50" width="50" viewBox="0 0 100 100">
<rect width="10" height="30" x="45" y="70"></rect>
</svg>
</div>
<div style="display: inline-block">
<h2>End</h2>
<svg height="50" width="50" viewBox="0 0 100 100">
<rect width="10" height="70" x="45" y="30"></rect>
</svg>
</div>
相关文章:
- 如何将高度动画设置为自动
- 如何设置'auto'JQuery动画中的高度
- 为矩形制作动画'它的高度应该上升,而不是下降
- 格林索克动画不适用于 SVG 高度
- 纯JavaScript - 定时动画 - 一致的高度
- 制作jQuery高度百分比动画
- jQuery在.show期间设置高度动画('幻灯片')
- jQuery动画到容器的高度
- 替换后将动画设置为高度0
- 动画渐变(javascript)背景不会延伸到窗口的整个高度
- 核心动画页面中的聚合物内容标签不会;t测量高度
- 页脚在滚动底部时没有设置高度动画
- CSS 切换过渡动画,自动高度不起作用
- 制作潜水高度动画
- Javascript在Angular中切换高度动画
- 设置高度动画时元素跳跃
- Div高度动画会导致Div在jQuery中更改对齐方式
- 在高度动画后获取回调
- Javascript高度动画问题
- 如何在jQuery中反转高度动画方向