ReGA Posted November 9, 2012 Share Posted November 9, 2012 (edited) I'm using this function to detect whether a key is being hold: var keyDown=new Array(false,false,false,false,false,false); function keys(e,isDown) {keynum=-1;if (e.which) { keynum=e.which;}else if (window.event) { keynum=e.keyCode;}if (isDown && keynum==32) alert("Spacebar!"); // Test 1if (keynum==38) { // Arrow-up keyDown[0]=isDown;}else if (keynum==39) { // Arrow-right keyDown[1]=isDown;}else if (keynum==40) { // Arrow-down keyDown[2]=isDown;}else if (keynum==37) { // Arrow-left keyDown[3]=isDown;}else if (keynum==32) { // Spacebar keyDown[4]=isDown; if (isDown) alert("Spacebar!"); // Test 2}else if (keynum==80) { // P-key keyDown[5]=isDown;}} The function is called in the body-ellement: <body onkeydown="keys(event,true)" onkeyup="keys(event,false)"><!-- Body contents... --></body> Like you can see, when a button is pressed (or released) this is stored in the array. Thismakes it possible for functions to see if a key is being hold at any time (yes, maybe there are other ways to do this). But this combinations do not work (push the keys in the order I give them):1) Press the right and down-arrow;2) Press the spacebar; On my computer the spacebar is not detected, when trying this combination. This combination doesn't work either:1) Press the left and up-arrow;2) Press the spacebar; I really want the spacebar to work! Even the alert boxes do not show up when trying this.I tried this in Firefox en Chrome. Both browsers do not detect the spacebar when pressed. Is there something wrong with the script, or is it a javascript bug? Thanks in advance! Edited November 14, 2012 by ReGA Link to comment Share on other sites More sharing options...
JamesB Posted November 17, 2012 Share Posted November 17, 2012 hmm it works fine for me with 3 keys held down in firefox, chrome and opera. Link to comment Share on other sites More sharing options...
Ingolme Posted November 17, 2012 Share Posted November 17, 2012 I've had experience with three keys being pressed at the same time and not receiving all the signals. I don't know if this is on all keyboards or just laptop keyboards but there's nothing at the Javascript level (or ActionScript as I've experienced in the past) that can be done to fix it. It's possibly a hardware limitation but I haven't really researched beyond my own experience. Link to comment Share on other sites More sharing options...
ReGA Posted November 23, 2012 Author Share Posted November 23, 2012 Odd... Thanks for your replies anyway, guys. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now