javascript - JavaScript 中的递归调用不起作用?

标签 javascript jquery recursion

我定义了一个函数并将其称为递归函数,但它不起作用 这是代码

$(document).ready(function () {
//if i remove the slider call here it doesn't even run the function slider     
slider();
    function slider() {
        $("#img2").fadeOut(3000, function () {
            $("#img2").fadeIn(3000);
        });
//recursive call
        slider();
    }
});

最佳答案

它正在工作,但您在 fadeOut 完成之前再次调用 slider()。将递归调用粘贴在回调中:

function slider() {
    $("#img2").fadeOut(3000, function () {
        $("#img2").fadeIn(3000, function() {
            //As Kristof Feys pointed out, you probably want to wait for the 
            //fade in to complete, then call the method.
            slider();
        });
    });
}

还有一个演示:http://jsfiddle.net/9k7e3/

关于javascript - JavaScript 中的递归调用不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19791688/

相关文章:

javascript - 子字符串不适用于 childNodes[0].nodeValue

java - 从 XML 递归打印树结构在 java 中具有奇怪的行为

javascript - 使用 YUI 和 Javascript 嵌套对象

javascript - React css webkit 动画在 setState 后不起作用

javascript - NPM 错误找不到当前 "es2015"- babel/node/react

javascript - 包含 AngularJS 多选指令时出错

javascript - RequireJS 和 Backbone ajax 问题

javascript - 立即启动 AJAX 请求但在添加元素之前确保页面已加载?

scala - 如何实现TCO的递归

sql - 在单个 SQL 查询中返回 json 层次结构