最近一直在重复发明轮子,又碰到了一个需要用到类似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;