javascript - 脚本刚刚停止

标签 javascript jquery

我有一个 JavaScript 脚本,希望每隔几秒就有多个 div 淡入/淡出。一次只能看到一个。我创建了以下内容来完成这项工作:

var tmnlSpDelay = 5000;
var $currentVis = null;

tmnlFadeIn = function ($re) {
    $re.css("display", "inline");
    $re.fadeIn('slow', "");
    $currentVis = $re;
    setTimeout("tmnlSpinner();", tmnlSpDelay);
}

tmnlSpinner = function () {
    var $random_elem = $('.topcontent').eq(Math.floor(Math.random() * $('.topcontent').length));
    if ($currentVis != null) {
        $currentVis.fadeOut('slow', "function() { tmnlFadeIn($random_elem) }");
    } else {
        tmnlFadeIn($random_elem);
    }
}

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

如您所见,我也在使用 jQuery 来帮助我。问题是在它运行一次并再次运行 tmnlSpinner 之后(除了,因为它已经运行过一次,currentVis 不再为 null)。当它在 $currentVis 上运行 fadeOut 时,它就停止工作了。 Google Chrome 不会就任何类型的错误向我提供任何反馈。有人看到任何问题吗?

最佳答案

删除 "function() { tmnlFadeIn($random_elem) }" 周围的引号。您正在传递一个字符串,您应该在其中传递回调。

关于javascript - 脚本刚刚停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6804174/

相关文章:

javascript - 如何调试 docker 容器中的段错误?

javascript - Node.js 异步等待 - 错误 regeneratorRuntime

javascript - 在不重新加载页面的情况下在 URL 中添加项目(pushState)

jquery - 将两个 <span> 元素并排放置

javascript - 在单独的 div 悬停上缩放图像

javascript - 使 jquery 滑动 slider 宽度 100%

javascript - 如何使用 Javascript 将当前时间与格式化为字符串的时间范围进行比较

javascript - 看似简单的数组循环上的 TypeError

javascript - 使用 <canvas> 在 JavaScript 中实现 Conway 的生命游戏

javascript - 仅突出显示包含复选框的单元格