function Pause(obj, pSecond) { /*利用window.eventList系统对象来传递Test这个弱对象,这是由于你的函数有可能是带参数的。 由面向对象的思想,传递参数尽量不要采用全局变量,因为你的对象有可能有1个也有可能有n个,而 有些时候所创建对象的个数并不是你事先可以知道的,那么要创建全局变量的个数自然很难判断了。 所以此处用一个中间载体来传递对象,而不是参数值!*/ if (window.eventList == null) window.eventList = new Array(); var ind = -1; for (var i = 0; i < window.eventList.length; i++) { if (window.eventList[i] == null) { window.eventList[i] = obj; ind = i; break; } } if (ind == -1) { ind = window.eventList.length; window.eventList[ind] = obj; } var sdf = pSecond * 1000; setTimeout("GoOn(" + ind + ")", sdf); } function GoOn(ind) { var obj = window.eventList[ind]; window.eventList[ind] = null; if (obj.NextStep) obj.NextStep(); else obj(); } 自己的Function 写入 Pause(this,5); this.NextStep = function(){ //后续代码 };