我可以在单个动画中为多个变量值设置动画吗?我想将这个值的两个变量值设置为该值的动画。
在这段代码中,我希望x和y值从给定值动画到另一个值,但我只能用x来做。 (代码来自这里的答案,但希望在使用多个值时提供一些帮助:jquery "animate" variable value)
$({someValue: 0}).animate({someValue: -2147.141601481341}, {
duration: 5000,
step: function() {
mainMap.pan({x: someValue, y: -5937.031428375433})
}
});
答案 0 :(得分:1)
只需向对象添加多个属性即可。试试吧:
//initial values end values
$({x: 0, y: 10}).animate({x: 10, y: 0}, {
duration: 5000,
step: function() {
$('#x').text(Math.round(this.x));
$('#y').text(Math.round(this.y));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
x: <span id="x"></span> <br/>
y: <span id="y"></span>
您的代码应该类似于:
$({x: 0, y: 0}).animate({x: -2147.141601481341, y: -5937.031428375433}, {
duration: 5000,
step: function() {
mainMap.pan(this)
// or mainMap.pan({x: this.x, y: this.y, foo: "bar"})
}
});