如何在jQuery中以相同的速度对每个元素进行动画处理
How to animate every element in equal speed in jQuery?
我有简单的动画。
$(element).animate({
left: rand_value() + "px"
}, 5000, "linear");
但有一个小问题。动画持续时间从 A 点到 B 点为 5 秒。但我想以相同的速度从 A 点到 B 点对每个元素进行动画处理,而不受时间的依赖性。我不知道该怎么做。
例:
- ElemA:起点为 0,终点为 1000
- ElemB:srart 点为 0,终点为 200
ElemA 和 ElemB 的速度必须相等,~ 10px/秒。这意味着动画的持续时间不同。
这可能会有所帮助:
var rand = rand_value();
$(element).animate({
left: rand + "px"
}, 100*rand, "linear");
这就是为什么这是有道理的:speed = distance/time
,如此10px/sec = rand/time
,因此0.01px/millisecond = rand/time
,以至于time = rand/0.01
等于time = rand * 100
。这与.animate(...)
以毫秒为单位的持续时间这一事实一致。
好的,谢谢你的想法JCOC611对我来说有合适的解决方案
var rand = rand_value();
var multiplier = 3; // multiplier, to decrease animation speed
$(element).animate({
left: rand +"px)"
}, rand * multiplier, "linear");
这样,每个动画都将具有相同的速度,并且可以通过乘数控制速度。
相关文章:
- 如何使用jquery处理php循环通过元素
- 处理表行的当前子级,而不是名称或类的所有元素
- 在MVVM视图模型中处理应用程序范围的元素
- 有没有一种方法可以让内联事件处理程序在元素创建后立即执行
- stickyfloat无法处理绝对定位的元素
- SVG元素——处理和选择文本
- 如何在元素中处理鼠标事件,但不能在其子元素上处理
- jQuery on('单击',..)未处理附加的元素
- 如何使用角度事件处理程序引用输入元素的值
- d3与svg在处理元素时的对比
- 基于类附加点击处理程序,只要元素获得该类
- Meteor - 从另一个模板事件处理程序访问 DOM 元素
- stopPropagation是否还会阻止同一元素上的其他处理程序运行
- 防止通过父元素处理程序触发处理程序
- JavaScript 从表单元素处理复选框创建 URL
- 使用嵌套元素处理触摸事件
- 使用嵌套的HTML元素处理拖放
- Javascript元素处理
- AJAX表单元素处理
- 通过透明元素处理 JS 事件