【问题标题】:Error: "Too much recursion"错误:“递归过多”
【发布时间】:2013-01-23 10:21:55
【问题描述】:

Firebug 向我显示以下错误:too much recursion,我尝试了很多来确定是什么导致我出现此错误,但徒劳无功

这是我的 JavaScript 代码:

$(".scan").click(function(e){
    e.preventDefault();
    var docName = $("#nomPJ").val();
    $(this).attr("nomDoc",docName);
});

另外一个单独的js文件:

$(".scan").live("click",function(event){
    alert("frame");
    var e = event.target;
    nomDoc = $(e).attr("nomDoc");
    idDoc = $(e).attr("idDoc");
    alert("id"+idDoc);
    $("#title").text(nomDoc);
    $("#modal-body").empty().append('<iframe frameBorder="0"  height="90%" width="98%" style="margin-left: 5px"  src="/GRH/Scan.jsp?nomDoc=' + nomDoc + '&idDoc='+idDoc+'"></iframe>');
    $("#myModal").modal({ dynamic: true });
});

html元素:

<a href="" class="scan" idDoc="1" nomDoc="" target="_blanck">numériser</a>

我删除了第一个代码,但问题仍然存在。

【问题讨论】:

  • 添加你得到错误的哪一行?
  • firebug中的错误表示jquery中有一行
  • 我不知道究竟是哪一行导致了这种情况,firebug 指示的 jquery 行的一部分
  • 问题:您使用的是引导程序吗?建议:.live() 方法已弃用。使用.on() 附加事件处理程序
  • 同样的错误,不同的信息 ;)

标签: javascript jquery html


【解决方案1】:

好的,听起来像一个错误,但我已经阅读了the docs 并且没有动态选项,无论如何,很清楚模态引导插件还有一些其他错误,例如multiple modal bug

可能的解决方案:

  1. 不推荐修改modal.js
  2. 使用另一个modal plugin。看起来效果不错。
  3. 将两个点击事件合二为一
  4. 删除modal()函数上的dynamic: true选项,使用css将固定宽度设置为#myModaloverflow:scroll

【讨论】:

    【解决方案2】:

    对于那些试图在其他应用程序中实际解决此问题的人来说,firebug/fox 相当粗糙; chrome 将为您提供更多帮助。

    如果你觉得你的燕麦不好,或者不能使用 chrome,this post 让我免于麻烦!

    长话短说,它会自动记录每个函数,所以

    function apples () {
      bananas()
    }
    function bananas () {
      apples()
    }
    

    变成

    function apples () {
      console.log('apples');
      bananas()
    }
    function bananas () {
      console.log('bananas');
      apples()
    }
    

    以便您可以准确地看到哪些函数被包裹在完全模糊的“太多递归”中

    故障排除愉快!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-03
      相关资源
      最近更新 更多