【发布时间】:2014-10-08 14:55:03
【问题描述】:
我想用 jquery 为 css 渐变设置动画,但找不到任何解决方案。有人有想法吗?问题是,我无法从一个类动画到另一个类,因为我的 rgba 是随机的(我使用 mousemouve 事件做了一些事情)。
这是我的实际代码
$(this).css(
{background: '-webkit-gradient(linear, left top, right top, from(rgba('+ a +','+ b +','+ c +','+ alpha +')), to(rgba('+ a2 +','+ b2 +','+ c2 +','+ alpha +')))'
});
但我想做的是这样的:
$(this).stop().animate(
{background: '-webkit-gradient(linear, left top, right top, from(rgba('+ a +','+ b +','+ c +','+ alpha +')), to(rgba('+ a2 +','+ b2 +','+ c2 +','+ alpha +')))'},
{
duration: 1500,
easing: 'easeOutBounce'
}
);
我得到的最好的结果是它不会改变渐变,而只会改变第一个 rgba 的背景颜色。
基本上,css() 过于激进,我希望它是平滑的。我尝试仅使用带有背景色的动画,它可以正常工作,但不能使用渐变。
有什么想法吗? 提前致谢。
编辑:这是完整的 js background.js
EDIT #2:在这里找到我所有的答案。 script on jqueryscript.net
【问题讨论】:
-
您无法使用 jQuery.animate(),但您可以使用 setInterval() 编写一个直接的 javascript 实现。
-
试过 css
transitionsdeveloper.mozilla.org/en-US/docs/Web/Guide/CSS/… ?或者,在.animate中使用step函数? -
@guest271314 过渡不适用于渐变。我不知道坦率地说:)它是插件还是什么?
-
@hellodracon 见帖子。谢谢
标签: jquery css jquery-animate gradient