如何制作jquery无限动画?
我正在尝试实现一个带有无限循环的 jQuery 函数,以 3 种颜色为主体背景设置动画。我想不出一个好的、干净的解决方案。 像这样的东西吗?
$(document).ready(function(){
$('body').animate({backgroundColor:'#ffcc00'}, 500, function(){
$('body').animate({backgroundColor:'#eeeeee'}, 500, function(){
$('body').animate({backgroundColor:'#3b5998'}, 500);
});
});
});
有什么想法吗?
I'm trying to implement a jQuery function with an infinite loop to animate the body background with 3 colours. I cannot think of a nice and clean solution.
Something like this?
$(document).ready(function(){
$('body').animate({backgroundColor:'#ffcc00'}, 500, function(){
$('body').animate({backgroundColor:'#eeeeee'}, 500, function(){
$('body').animate({backgroundColor:'#3b5998'}, 500);
});
});
});
Any idea?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
您可以消除嵌套,但解决方案有点胖:
You can eliminate the nesting, but the solution is a little fatter:
演示:http://jsfiddle.net/bHEVr/
Demo: http://jsfiddle.net/bHEVr/
我宁愿使用事件驱动的方法:
观看此解决方案的实际应用:
http://jsfiddle.net/ perituswebdesign/f5qeo6db/1/
I would rather use an event-driven approach:
Watch this solution in action:
http://jsfiddle.net/perituswebdesign/f5qeo6db/1/
在 animate() 的回调中调用 animate 函数。
请参阅 jQuery 论坛 中的此示例
Call the animate functions in the callback of animate().
See this example in the jQuery forum
未经测试
UNTESTED
试试这个: http://jsfiddle.net/hBBbr/
Try this : http://jsfiddle.net/hBBbr/
我知道已经过去了很多年,但我认为这对于某些人来说仍然是一个问题,就像我使用 jquery v1.10.2 时一样。
不管怎样,经过几个小时的尝试处理它,我最终使用了以下代码来实现多层背景 这个插件:
命名方案如下:我创建嵌套的DIV并在HTML中给它们ID。在 JS 部分,相同的 ID 用于在包含所有动画完成时自调用函数的对象中键入属性。 此处演示。
I know it's years later but I think this could still be a problem for someone just like it was for me with jquery v1.10.2.
Anyway, after a few hours of trying to deal with it, I ended up using the following code for multiple layered backgrounds with this plugin:
The naming scheme is as follows: I create nested DIVs and give them IDs in the HTML. In the JS part, the same IDs are used for keying the properties in the object containing all the self-calling-on-animation-finish functions. Demo here.
我强烈推荐 jQuery 计时插件 (2KB) (GitHub & 文档)。
它提供了易于使用的无限动画等等。看看:
I highly recommend the jQuery timing plugin (2KB) (GitHub & Docs).
It provides easy-to-use infinite animations and much more. Have a look: