递归 arguments.callee.caller 死循环的问题

园子搜到的问题: http://www.cnblogs.com/jkisjk/archive/2012/06/01/2531004.html

和我的情况很相似。

我使用  getDoer 查找事件源,通过 arguments.callee.caller 递归查找,出现死循环的原因是: 我在函数中使用了递归,而且是在 $.each 里 ! 也就是 caller链中有时会有闭环

方案:

1.把 $.each 改为 for

2.在 递归调用自己的方法,添加最后的参数: { originalEvent: true, target: jv.GetDoer() }

另外:

在FireFox 下,如果 函数头部有如下代码:

"use strict";


则会报:  access to strict mode caller function is censored

很奇怪的问题,去掉 "use strict";  就好了,换成其它字符串也没有问题。

alarm   作者:NewSea     出处:http://newsea.cnblogs.com/    QQ,MSN:iamnewsea@hotmail.com

  如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。
原文地址:https://www.cnblogs.com/newsea/p/2703540.html