最近一直在重复发明轮子,又碰到了一个需要用到类似sleep函数的函数,可javascript中并没有提供函数暂停执行Nms的方法,只能自己利用setInterval实现一个类似的功能。


js 代码




1. delay = function(fn,parm,scope,config){    
2. var start = new
3. var zero_interval = null;    
4. var
6. var h = function(){    
7. if(new
8.             clearInterval(zero_interval);    
9.             fn.apply(scope,config);    
10.         }    
11.     }    
13.     zero_interval = setInterval(h,parm);    
14. }


参数说明如下,fn是延时之后待执行的函数,parm是延时的时间(最后的延时时间会在此基础上增加10-15ms),scope是fn函数的作用范围,config是fn函数的参数。

用法如下:


js 代码




    1. var
    2. function
    3. new
    4.     delay(show,20);    
    7. function
    8. new
    9. }


    这里得到的提示是31ms的样子,不过在我自己的代码中只是需要延时一下,而不需要严格控制时间的长短。所以这个时间也就没必要细究了。

    我自己程序中的代码如下:


    js 代码




    1. ZERO.delay = function(fn,parm,scope,config){    
    2. var start = new
    3. var zero_interval = null;    
    4. var
    5. var
    7. var h = function(){    
    8. if(new
    9.             clearInterval(zero_interval);    
    10.             fn.apply(scope,config);    
    11.         }    
    12.     }    
    14.     zero_interval = setInterval(h,parm);    
    15. }    
    18. ZMenu.prototype.onMouseOver = function(){    
    19. this.addClass("mouseoverstyle");    
    20. this.hiddenMenu = false;    
    21. if(this.hasChild){    
    22. this.click();    
    23.     }    
    24. }    
    26. ZMenu.prototype.onMouseOut = function(){    
    27. //此处需要延时一段时间再执行 
    28. if(this.hasChild){    
    29. this.hideChildMenu,20,this);    
    30. this.hiddenMenu = true;    
    31.     }    
    32. else{    
    33. this.hiddenMenu = true;    
    34. this.hideChildMenu();    
    35.     }    
    36. }
javafx飞机大战 java飞机大战素材

制作一个简单的飞机大战注意!!!!!,图片素材在我的资源里有。下面代码排序,非先后顺序。请看清楚类名Airplane类package Flyplane; public class Airplane extends FlyingObject implements Enemy{ private int yspeed=2;