未捕获的RangeError:以及过多的递归
Uncaught RangeError: and too much recursion
本文关键字:递归 RangeError 更新时间:2023-09-26
所以我正在尝试让我的表单工作。我有两个错误,我不知道它们到底发生在哪里。第一个是:
Uncaught RangeError: Maximum call stack size exceeded
e.extend.each
$.extend.ready
$.extend.ready
$.extend.ready... //there are literally 50+ more $.extend.ready scripts below this
这个错误必须处理jquery文件,因为我删除了另外两个来查找它的来源,当我删除jquery文件时,错误消失了。该文件是jquery-1.7.1min.js。我不能将更高版本用于我无法控制的目的。
第二个是:
递归过多:
if ($.browser.mozilla || $.browser.opera) {
document.removeEventListener("DOMContentLoaded", $.ready, false);...//the first line basically
当然,我对这两个问题都进行了搜索,但这些问题似乎与我的脚本中的任何错误都无关。我有一个表格正在努力运行,我觉得这两个问题可能是造成问题的原因。"清除"answers"提交"按钮不起作用,所以我试图解决我知道的问题,这是我遇到的最后两个问题。
好的,我发现了问题所在:
$(function () { //this is the way to run your code at the DOM Ready event
$('a').click(function () {
$('html, body').animate({ //this is line 8
scrollTop: $($(this).attr('href')).offset().top
}, 1500);
return false;
});
});
SCRIPT5007:无法获取未定义或null引用的属性"top"script.js,第8行,字符9
那会是什么呢?
如果href
属性指向使用name
属性的命名锚点(例如<a name="foo">
),则无法使用#foo
来解析它,因为选择器中的#
与id
属性匹配,而不是与name
特性匹配。
在您的情况下,由于#foo
不存在,$('#foo').offset()
将生成一个没有.top
属性的空对象。
你可以:
- 在锚点上使用
id
属性而不是name
,或者 - 使用
$([name=...])
选择器(去掉前导#
),或 - 使用CCD_ 15函数存储一些其他元数据以指向所需元素
相关文章:
- 数组在递归方法中设置为null
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- 递归使用 eval() 是检查程序执行的好方法吗?
- 使用递归、Ramda.js和无点样式重构字符串的getPermutations()
- 递归深度比较
- Eloquent JavaScript递归示例如何终止为返回1,但仍然输出指数值
- 递归函数中断
- 如何递归地获取嵌套对象中所有子对象的列表
- JavaScript 素数搜索无限递归
- 在递归生成器函数中,yield后面的*(星号/星号)语法意味着什么
- 递归|两个函数名
- 有没有一种方法可以在Javascript中进行可变递归currying
- 如何对不同的表递归使用以下代码
- 将jQuery对象传递到setTimeout递归函数中
- 有更好的方法吗?(递归解析HTML unicode实体)
- 为什么递归生成器函数没有't在ES2015工作
- 使用递归实现加性持久性
- AngularJS:使用$timeout递归调用函数时的RangeError
- javascript递归函数:Uncaught RangeError:超过了最大调用堆栈大小
- 未捕获的RangeError:以及过多的递归