我想自动将“渐变”CSS样式应用于一系列<div>
元素;即opaque
在从透明到完全不透明的一系列元素上设置规则。
jQuery.animate()
似乎在插入我需要的 CSS 样式方面做得很好。但是,很明显,animate()
随着时间的推移会发生变化,而我只想计算一些单独的“帧”。
必须在 jQuery 代码的某处隐藏为动画功能计算这些单独步骤的代码。我期待遇到类似的东西,interpolate(objectWithOldCss, objectWithNewCss, step)
但似乎找不到类似的东西。
有没有办法访问插入 CSS 规则并直接使用它的 jQuery 代码?
编辑:感谢 James Montagne 的回答,我最终采用了以下jQuery.interpolate()
方法:
$.fn.interpolate = function(name, value, blend, easing) {
var elem = this[0];
if (jQuery.isArray(name)) {
$.Tween(elem, {duration: 1}, name, value, easing || "linear").run(blend);
} else {
easing = blend;
blend = value;
$.each(name, function(n, v) {
$.Tween(elem, {duration: 1}, n, v, easing || "linear").run(blend);
});
}
}
它在这里演示:http: //jsfiddle.net/mwvdlee/yfcg5/