javascript - 我怎样才能使它成为一个更好的递归动画 jQuery 脚本?

标签 javascript jquery jquery-ui jquery-animate

想法是为云 div 设置动画,并让它永久地水平来回动画。这可行,但不幸的是我认为它容易出现内存泄漏和 UI 滞后。任何建议将不胜感激,谢谢。

function animateCloud() {
    $('#cloud').animate({ right: '+=500' }, { duration: 35000, easing: "linear", queue: true });
    animateOpposite();
}

function animateOpposite() {
    $('#cloud').animate({ right: '-=500' }, { duration: 35000, easing: "linear", queue: true });
    animateCloud();
}

$(document).ready(function() {
    animateCloud();
});

最佳答案

我认为您的代码根本不会泄漏内存,但您可以缩短调用时间。

function animateCloud() {
    $('#cloud').animate({ right: '+=500' }, { duration: 35000, easing: "linear" })
               .animate({ right: '-=500' }, { duration: 35000, easing: "linear", complete: animateCloud });
}

示例:http://www.jsfiddle.net/bh3f4/

关于javascript - 我怎样才能使它成为一个更好的递归动画 jQuery 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4685867/

相关文章:

javascript - 停止 JavaScript 中的执行

javascript - Knockout.js 选择值绑定(bind)到对象

javascript - 如何获取div内的图片url

javascript - 检查元素在 DOM 中是否可见

javascript - 滚动一定距离后弹出文本不起作用

jquery - 如何改变JQuery对话框的位置

javascript - 在 javascript 或 jquery 中的图像之间切换

javascript - 如何将 JSON 动态插入到 Accordion 菜单中?

javascript - 如何在 HTML 中旋转表格中的列文本

jquery - 将 div 的内容重叠在其他内容上