AS3.0制作出的游戏中一开是都正常 事件长了后jquery键盘弹起事件的听诊事件就不起作用了

The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.:转载时请以超链接形式标明文章原始出处和作者信息及本声明
对于3.0的键盘事件实在太无语了~自己改良了下~效果不错~提供4个事件 &KEY_IS_DOWN;&KEY_DOWN&&KEY_UPKEY_CONTINUUMKEY_IS_DOWN;事件触发后可以调用getisDown():方法返回处于按下状态的所有键盘对应的keyCode值得数组;&KEY_CONTINUUM事件跟KEY_DOWN事件触发后可以调用getkey()方法获取单击或连击的所有keyCode值的一个数组;而且KEY_CONTINUUM跟KEY_DOWN两者同时只会触发一个,而且跟KEY_IS_DOWN事件相互独立,这样就不用担心键盘弹起会影响到KEY_IS_DOWN的准确性。&&&&package com.golive2.core.util.keyboard{&import flash.display.*;&import flash.events.*;&import flash.utils.*;&public class KeyboardState extends EventDispatcher {&&public static const KEY_IS_DOWN:String='keyboardStateKeyIsDown';&&public static const KEY_DOWN:String='keyboardStateKeDown';&&public static const KEY_UP:String='keyboardStateKeUp'&&public static const KEY_CONTINUUM:String='keyboardStateContinuum '&&public var interval:uint=200;&&private var timerIndex:Timer=new Timer(80);//运行过程中的timer主要用于isdown数组的检查&&private& var isDown:Boolean=&&private& var keyDown:Boolean=&&private var reSetkeyDown:Boolean=&&private var t1:int=0&&private var t2:int=0&&private var timeList:Array=new Array()&&private var keyCode:&&private var stage:DisplayObjectC&&private var& isContinued:Boolean=false&&private var lock:Boolean=&&private var isDownArray:Array=new Array()&&public function KeyboardState(item:*,frame:uint=200,...res) {&&&&& &&stage=item.&&&&& &&interval=frame&&&stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownFunc);&&&stage.addEventListener(KeyboardEvent.KEY_UP, keyUpFunc);&&&timerIndex.addEventListener(TimerEvent.TIMER,timerInit)&&&timerIndex.start()&&&&&}&&&&private function keyUpFunc(event:KeyboardEvent):void &&{////////////////////////////////////删除不再isDown的值/////////////////////////&&&var deleteKey:uint=event.keyCode&&&&&&&for(var i:uint=0;i&isDownArray.i++)&&&&{&&&&&if(deleteKey==isDownArray[i])&&&&&{&&&&&&isDownArray.splice(i,1)&&&&&&i--&&&&&}&&&&}//////////////////////////////检测是连击还是单击////////////////////////////////&&&&&&t2=getTimer()&&if(t2-t1&=interval)&&&{&&&&//连击键盘&&&timeList.push(event.keyCode)&&&dispatchEvent(new Event(KeyboardState.KEY_CONTINUUM))&&&}else{&&&//单击键盘&&&&&&timeList=new Array();&&&timeList.push(event.keyCode)&&&dispatchEvent(new Event(KeyboardState.KEY_DOWN))&&&}//////////////////////////////////////////////////////////////////////////&&&&&&this.reSetkeyDown=this.keyDown=this.isDown=&&&stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpFunc);&&&stage.addEventListener(KeyboardEvent.KEY_UP, keyUpFunc);&&&t1=&t2&&&//松开键盘&&dispatchEvent(new Event(KeyboardState.KEY_UP))&&}&&&&private function timerInit(event:TimerEvent):void&&{&&&stage!=null?stage.stage.focus =stage.stage:''&&&&&&if(isDownArray.length&0)&&&{&&&&dispatchEvent(new Event(KeyboardState.KEY_IS_DOWN))&&&&}&&&&}&&private function keyDownFunc(event:KeyboardEvent):void {&&&&if(!this.keyDown)&&&&{&&&&&this.keyDown=true&&&&} &&&&if(this.keyDown)&&&&{&&&&&var count:int=0&&&&&for(var i:uint=0;i&isDownArray.i++)&&&&&{&&&&&&if(event.keyCode!=isDownArray[i])&&&&&&{&&&&&&&count++;&&&&&&}&&&&&}&&&&&if(count==isDownArray.length)&&&&&&{&&&&&&&isDownArray.push(event.keyCode)&&&&&&}&&&&}&&&&stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownFunc);&&&&stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownFunc);&&}&&&&&& public function getkey():Array{&&&& &return timeList&&&& }&&&& &&public function getisDown():Array&&{&&&return isDownArray&&&&}&}}
引用地址:&&&&AS3.0键盘事件示例
AS3.0键盘事件示例
自己做的一个小游戏,按空格键开始,按↓计数,统计10秒内↓被按下的次数.
注意: 本源代码的flash版本为cs5.5 低级版本是没办法打开的!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.flash AS3.0怎么监听到键盘的回车键,包括小键盘的回车。_百度知道}

我要回帖

更多关于 js键盘弹起事件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信