setTimeout 和 jQuery:未捕获 RangeError:超出最大调用堆栈大小 [重复]

2024-04-12

我试图在页面加载时调用我的类,并每隔 X 秒重新加载结果,但是在 setTimeout 教程之后,jquery 似乎给我抛出了一个错误,考虑到它是无语法的,我不明白。

未捕获的范围错误:超出最大调用堆栈大小

var rand = function() {
    return Math.random().toString(36).substr(2);
};

lhc();

function lhc(){
    $('#lhcb a').each(function() {
        var rawlink = $(this).attr("href");
        var link = encodeURIComponent( rawlink );
        var token = rand();
        var href = $(this).prop('href');
        var proceed = $.getJSON( "lhc/link.php?link=" + link + "&a=c", function( data ) {
            if ( data.proceed == 'true' ) {
                return true;
            } else {
                return false;
            }
        }).error(function(e) { alert("error"); console.log(e);});
        if ( href.match("^javascript:") ) {
            proceed = false;
        }
        if ( rawlink.charAt(0) != '#' ) {
            if ( proceed ) {
                $(this).after( " <span style='font-size:xx-small;'>( Hits: <span id='" + token + "'></span> )</span>" );
                    $.getJSON( "lhc/link.php?link=" + link + "&a=q", function( data ) {
                        $('#' + token).html(data['hits']);
                    }).error(function(e) { alert("error"); console.log(e);});
                $(this).attr( "href", "lhc/link.php?link=" + link + "&a=g" );
            }
        }

    });
    setTimeout(lhc(), 5000);
}

Change

setTimeout(lhc(), 5000);

to

setTimeout(lhc, 5000);

添加括号时,您将直接调用该函数,而不会超时,并且在同一个函数内立即调用该函数很快就会变成一个无限循环,从而填满堆栈

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

setTimeout 和 jQuery:未捕获 RangeError:超出最大调用堆栈大小 [重复] 的相关文章

随机推荐

  • Mac OS 上“导入 cv”期间出现“分段错误”

    尝试在我的 Mac 上从源代码编译 opencv 我有以下 CMakeCache txt http pastebin com KqPHjBx0 http pastebin com KqPHjBx0 I make ccmake press c
  • 如何使用 Mongoid 更新 Rails 中嵌套的 Mongo 文档属性?

    如果这个问题缺乏细节 请提前道歉 我会看评论并添加我能添加的内容 我有一个具有以下内容的模型 class Product include Mongoid Document include Mongoid Timestamps field d
  • 运行模拟器时出错:架构 i386 的重复符号

    我添加了 ShareKit 框架来尝试 这是在模拟器中运行它的错误 duplicate symbol LFHRReadStreamClientCallBack in Xcode DerivedData build Objects norma
  • eclipse 无法删除某些断点

    双击eclipse左侧的蓝色条设置断点 再次双击可删除断点 这对我来说非常有用 但如果我使用 git 来签出不同的分支 通常断点的蓝点会变得 混乱 或其他什么 我无法再双击来取消它们 我被迫进入调试视角 并在 断点 视图中找到断点 然后右键
  • C# 正则表达式匹配带点的单词

    敏捷的棕色狐狸跳过了 懒狗 是英语 全字母表 字母表 也就是一个短语 包含所有字母 字母表 它已被用来测试 打字机字母表 和电脑 键盘和其他应用程序 涉及到所有的字母 英文字母表 我需要得到 字母表 正则表达式中的单词 上面的文字中有3个实
  • Telerik 报告不起作用

    处理报表 ReportStandart 时发生错误 无法建立与数据库的连接 请验证您的连接字符串是否有效 如果您使用应用程序配置文件中的命名连接字符串 请确保名称正确并且连接字符串设置存在于应用程序的配置文件中 内部异常 转到报表项目所在的
  • 从外部 php 系统登录 Odoo

    我有一个要求 我需要从外部 php 系统重定向到 Odoo 并且用户也应该登录 我想到了以下两种方法来完成此任务 来自 php 端的 url 重定向 它调用特定的控制器 并沿着 url 传递凭据 由于显而易见的原因 这不是一个安全的选项 从
  • 程序中出现了“\303”和“\215”——为什么? [复制]

    这个问题在这里已经有答案了 而不是我发现的程序中的杂散 302 here https stackoverflow com questions 5167656 error stray 302 in program 我收到错误消息 algo c
  • 获取公共 Google 文档文件的下载链接

    正在阅读谷歌文档 API http code google com apis documents docs 3 0 developers guide protocol html DownloadingFiles我发现这个 正在下载 无法以其
  • 为什么我们需要结构体? (C#)

    要使用结构体 我们需要实例化该结构体并像使用类一样使用它 那我们为什么不首先创建一个类呢 结构是一种值类型 因此如果您创建副本 它实际上会物理复制数据 而对于类 它只会复制对数据的引用
  • Firebase 无法在 Android Studio 模拟器上运行

    我当时正在做一个学习项目 一切都工作正常 但我将操作系统更改为 win11 同时擦除了所有以前的数据 现在 在使用任何类型的登录后 Firebase 都会停留在 正在加载 状态 实时数据库数据也不会显示 等待大约 5 10 个小时后 身份验
  • 从 Intellij 在远程主机上部署/运行 jvm 应用程序

    是否可以在 intellij 的远程服务器上部署 运行 出于测试目的 独立的 Java 应用程序 我并不是要连接到已经运行的 JVM 而是要从 intellij 在远程主机上启动一个新的 JVM 就像它在我的本地计算机上运行一样 目前没有内
  • python:如何重建需要编译的依赖项

    由于存在大量依赖项 我的 python 应用程序的虚拟环境的安装在部署过程中花费了太多时间 为了最大限度地减少时间 我想将驻留在 git 虚拟环境中的依赖项包括在内 以便它们在部署时就已经存在 主要问题是 由于机器之间的架构差异 需要重建与
  • 角度/形式整数验证器

    如何验证我的数字输入字段仅接受整数而不接受任何类型的小数 逗号 点 Code Component import FormGroup FormBuilder Validators from angular forms this savingD
  • NPM 如何更新/升级传递依赖?

    我在我的节点服务器中使用express v4 16 4 它已引入 cookie signature v1 0 6 我想将 cookie signature 升级到 v1 1 0 因为它有我需要的修复 有什么方法可以做到这一点 我认为我不应该
  • Charles Proxy:映射到 GET 请求而不是 OPTIONS [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有办法根据特定请求在 Charles 中进行本地映射 我的 API 发出 OPTIONS 请求 然后发出 GET 请求 当我在 Cha
  • 如何在React中添加事件监听器?

    我正在与用户和代理创建一个聊天应用程序 当代理在他单独的 Rainbow UI 上回复时 我试图检索消息 问题是这只能通过事件监听器来完成 如文档中所示 有人可以帮助我吗 我可以在哪里以及如何帮助我document addEventList
  • 发布 Google Maps API v2 Android 的流式传输方向

    因此 我的应用程序的一部分构建了一个导航方向字符串 然后尝试解析 JSON 并在地图上绘制折线路线 我首先使用位置变量或区域设置常量构建字符串 我最终得到类似的东西 https maps googleapis com maps api di
  • Python 中是否有类似于 Java 的 Thread.yield() 的东西?这还有道理吗?

    我想告诉我的 Python 线程让出 从而避免不必要地占用 CPU 在 Java 中 您可以使用Thread yield 功能 我认为Python中没有类似的东西 所以我一直在使用time sleep t where t 0 00001 F
  • setTimeout 和 jQuery:未捕获 RangeError:超出最大调用堆栈大小 [重复]

    这个问题在这里已经有答案了 我试图在页面加载时调用我的类 并每隔 X 秒重新加载结果 但是在 setTimeout 教程之后 jquery 似乎给我抛出了一个错误 考虑到它是无语法的 我不明白 未捕获的范围错误 超出最大调用堆栈大小 var