我希望有人能帮助我。
我有这个代码:
<script>
$(document).ready(function() {
spectrum();
function spectrum(){
$('#bottom-menu ul li.colored a').animate( { color: '#E7294F' }, 16000);
spectrum2();
}
function spectrum2(){
$('#bottom-menu ul li.colored a').animate( { color: '#3D423C' }, 16000);
spectrum();
}
});
</script>
它正在工作,但是当我查看萤火虫时,它说存在太多递归错误。
我希望有人能告诉我原因。
Thanks!
问题是你的脚本永远不会停止执行。
当页面加载时,你告诉它运行该函数spectrum()
。它运行这个函数,然后被告知运行该函数spectrum2()
,确实如此。当它完成时spectrum2()
,你告诉它运行spectrum()
再次,完成后它必须运行spectrum2()
再次..看到模式了吗?你可怜的脚本被困在一遍又一遍地执行这两个函数,永远!
一个函数调用自身(或者两个函数重复调用对方)的过程被称为递归 http://en.wikipedia.org/wiki/Recursion,但通常递归最终会以某种方式终止。你的脚本永远不会终止,所以 FireBug 会说“等一下,这个脚本永远不会结束,我最好抛出一个错误!”
这可能不是您想要实现的目标,并且修复很可能很简单。如果您可以尝试解释您想要实现的目标,也许我们可以帮助您编写正确的代码?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)