webForumDet fria alternativet

Kontrollera knapptryckningar i Mozilla

4 svar · 262 visningar · startad av orreborre

orreborreMedlem sedan aug. 20032 inlägg
#1

Hej!
Jag undrar om någon kan hjälpa mig att kontrollera om någon trycker ner ctrl(ascii 17) och enter(ascii 13) samtidigt.
När detta görs ska en form submittas.

Jag har gjort kod för IE som funkar jättebra, men jag har inte lyckats med Mozilla än.

Tacksam för svar!

Mvh

JojoxxMedlem sedan juni 20004 308 inlägg
#2

Litet exempel:

if (!document.all){ document.captureEvents(Event.KEYDOWN|Event.KEYUP); } 
var keyboard=new Object();
window.onblur = function(){ for(var a in keyboard){ keyboard[a]=false; }}
document.onkeyup = function(e){
	var keycode=(document.all)?event.keyCode:e.which;
	if(keycode>0){ keyboard[keycode]=false; }
}
document.onkeydown = function(e){
	var keycode=(document.all)?event.keyCode:e.which;
	if(keycode>0){ keyboard[keycode]=true; }
	if(keyboard[13]&&keyboard[17]){ alert("Nu händer det saker."); document.myform.submit(); }
}

Välkommen till wF förresten.

CheguelinMedlem sedan juli 2003303 inlägg
#3

Uppenbarligen ska man kunna använda event-objektets property modifiers för detta ändamål, men jag lyckas inte få ihop något. Jag efterlyser därför en lösning på detta.

JojoxxMedlem sedan juni 20004 308 inlägg
#4

Visst:

if (!document.all){ document.captureEvents(Event.KEYDOWN|Event.KEYUP); } 
var keyboard=new Object();
window.onblur = function(){ for(var a in keyboard){ keyboard[a]=false; }}
document.onkeyup = function(e){
	if(!document.all){ event=e; }
	if(event.keyCode>0){ keyboard[event.keyCode]=false; }
}
document.onkeydown = function(e){
	if(!document.all){ event=e; }
	if(event.keyCode>0){ keyboard[event.keyCode]=true; }
	if(keyboard[13]&&event.ctrlKey){ alert("Nu händer det saker."); document.myform.submit(); }
}
orreborreMedlem sedan aug. 20032 inlägg
#5

Jojoxx: Tackar för välkomnandet!

Och tack för din kod, det funkar perfekt!

136 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)