2017-08-28 25 views
-3
  • 我收到此错误的RangeError:最大调用堆栈大小超过这条线that.playerAdd();
  • 我试图通过给真正的回报,并把if条件来解决它。
  • 我甚至对方法
  • 没有使用工作。
  • 你能告诉我如何解决它。
  • 如果我继续断点此行that.playerAdd();它并没有离开这条线。
  • 你能告诉我如何解决它。
  • 提供下面我的RangeError:最大调用堆栈的大小在我的代码库超过

    代码添加新

    $("#swimming").unbind().on('click', function() { 
         if(true) 
         { 
         that.playerAdd(); 
         } 
         return true; 
        }); 
    
        playerAdd(): any { 
        if(true) { 
         $('#swimming').trigger('click'); 
        } 
        return true; 
        } 
    
    
        http://jsfiddle.net/ejv7k9sn/2/ 
    
+3

因为click事件调用自己? – epascarello

+0

感谢您的回复......您能否告诉我如何解决它 –

+1

不要自称? – epascarello

回答

0

你得到Maximum call stack size exceeded,因为你的函数是一个无限循环。 if(true)将始终为真,因此您的第一个处理程序将始终呼叫that.playerAdd();。而且,if(true)将始终保持为真,因此将始终调用$('#swimming').trigger('click');。这将发生无数次,最大调用堆栈大小将耗尽。你必须改变你的功能,不要每次都触发对方。

你改变这些到是你希望你的程序做,因为现在什么确定性是什么,它是很难准确的告诉你的最终目标是什么。如果你发布了更多的代码,或者关于你想要做什么的细节,我们可能会有更多的帮助。

相关问题