Reactie op aanraking van letters
Misschien een beetje vage titel en ik weet niet of het hier hoort, maar ik hoop dat het zo duidelijk is.
Ik wil graag dat mijn script reageert op de aanraking van letters. Dat een veld van een tabel bijvoorbeeld rood word als ik de letter L aanraak.
De letter mag je niet zien.
Weet iemand hoe dit kan?
Ik heb ook geen idee hoe dit heet ofzo, dus internet heeft mij niet veel opgeleverd.
Dus nog één keer: Hoe kan ik ervoor zorgen dat een tabel reageert als ik letters aanraak? De letters mag je niet zien!
Ik hoop dat iemand het antwoord weet =)
GreetzZzZZzz,,
Victor
probeer iets met javascript, google eens op mouse over. Ik denk dat dat de oplossing is.
Ik wil geen mouse over, maar dat hij reageert op aanraking van letters op mijn toetsenbord. En ook dat als ik er op klik dat hij rood word. Zou dat kunnen? (maybe een tune erbij zou wel cool zijn)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/* Besturing via toetsenbord */
function keyup ( event )
{
var key
if ( !event )
event = window.event ;
if ( event.keyCode )
key = event.keyCode ;
else if ( event.which )
key = event.which ;
if ( key == 40 )
go_down () ;
else if ( key == 39 )
go_right () ;
else if ( key == 38 )
go_up () ;
else if ( key == 37 )
go_left () ;
}
document.onkeyup = keyup ;
function keyup ( event )
{
var key
if ( !event )
event = window.event ;
if ( event.keyCode )
key = event.keyCode ;
else if ( event.which )
key = event.which ;
if ( key == 40 )
go_down () ;
else if ( key == 39 )
go_right () ;
else if ( key == 38 )
go_up () ;
else if ( key == 37 )
go_left () ;
}
document.onkeyup = keyup ;
Gewijzigd op 26/05/2010 18:01:40 door Yea Rupie
Ik zou het graag met letters willen (a,s,d,f,g,h,i,j,k,l, etc.), omdat er te weinig pijltjes zijn (A)
Dus als a word ingedrukt (of er word op de a-tabel geklikt) word ie rood en komt er een leuke tune ofzo
Kan dat?
Zojaa.. met welk script.
Ik wil het zelf ook proberen, maar als jullie me opweg willen helpen met waar ik naar moet zoeken zou dat fijn zijn. :)
key bevat een nummer van een toets. Ook de a-toets heeft zo'n nummer. Met alert(key) zou je dat kunnen vinden (al moet je dan niet op [esc] of [enter] drukken om je popupje weg te drukken, dan komt er weer eentje voor die toest :P)
Hoe zorg ik er dan voor dat als ik de a-toets indruk, de a-tabel rood word en een leuke tune geeft?:P
Tutorials zijn welkom! (Liefst Nederlandse)
Gewijzigd op 26/05/2010 22:23:58 door Victor Php
Je zult dan de eigenschappen van dat element aan moeten spreken. Om het betreffende element aan te kunnen duiden zou je het een id attribuut mee kunnen geven en vervolgens met behulp van document.getElementById() in javascript het juiste element benaderen en aanpassen.
Maar de uitwerking....
Even alles op een rijtje:
* Tabellen waarde meegeven: A-tabel krijgt waarde a dacht ik zo?
* Dan via javascript kijken op welke knop er is gedrukt en dan die tabel rood laten worden zolang de toets is ingedrukt. En de tune eenmalig laten horen.
Hoe?
Weet iemand een goede tutorial of kan iemand dit stukje denkwerk omzetten naar code?
Edit:
Ik heb een klein stukje code, maar dit werkt helaas niet:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<script type="text/javascript">
function keyboard ( event )
{
var key
if( !event )
event = window.event ;
if ( event.keyCode )
key = event.keyCode ;
else if ( event.which )
key = event.which ;
if ( key == 65 )
document.getElementById('mijnElement').style.visibility='hidden' ;
}
document.onkeyup = keyup ;
</script>
function keyboard ( event )
{
var key
if( !event )
event = window.event ;
if ( event.keyCode )
key = event.keyCode ;
else if ( event.which )
key = event.which ;
if ( key == 65 )
document.getElementById('mijnElement').style.visibility='hidden' ;
}
document.onkeyup = keyup ;
</script>
Edit 2: Ik weet dat ik hem nu onzichtbaar maak.. maar dit doet het niet, dus als ik hem rood maak doet hij het ook niet =)
Gewijzigd op 26/05/2010 21:51:15 door Victor Php
En wat is de javascript foutmelding die je krijgt. Gebruik bijvoorbeeld een addon als FireBug voor firefox om deze te achterhalen...
Er gebeurt gewoon niks.
addon als firebug zegt me niks...
Vic:
Ik krijg geen foutmelding.
Er gebeurt gewoon niks.
addon als firebug zegt me niks...
Er gebeurt gewoon niks.
addon als firebug zegt me niks...
lang leven google en wikipedia. het is een idee om te zoeken voor je iets vraagt. zoals ik op msn ook al zei.
Jij zit gewoon uit te maken voor weet ik veel wat.
Ik ga verder niet in op je bericht, want ik ga de rest van deze reactie besteden aan mensen die wel normaal kunnen helpen.
@Yearupie
Hmm..
Sorry.. zoals ik al eerder zei ben ik een 0 in javascript.
Dus zoveel zie ik er niet in. ;-$
Verder vind ik wel dat Wesley enigzins gelijk heeft. Snel roepen dat FireBug je niets zegt kan iedereen, terwijl het een kleine moeite is om dat even op te zoeken. Dan had je direct geweten dat die addon je onder andere in staat stelt om JS foutmeldingen in een console te tonen. Voor andere browsers zijn er vast andere oplossingen, maar ook dat kun je wel vinden op internet...
Okee.. het is nu ochtend, dus ik ben weer klaarwakker om ernaar te kijken.
Wesley heeft ook gelijk, maar jij hebt niet gezien hoe hij met mij omging op msn.
Verder was het ook de bedoeling om te googelen naar firebug, maar omdat ik gisteravond moe was, had ik mezelf voorgesteld om het vandaag te doen.
En dat ga ik nu of vanmiddag doen ;-)
Victor, op msn zei ik alleen maar - grof - dat het tijd word dat je leert omgaan met google. Je komt altijd met vragen af over de stomste dingen. Jij 'leert' webdev gerelateerde talen/technieken zoals je frans leert. Jij stampt de volgorde in je hoofd. Als je nou eens gewoon naar de logica leert kijken, de structuur, de functienamen, gaat het een stuk sneller. Als dit je heeft gekwetst, sorry dan, maar het is zo.
Ik leer niet zoals ik Frans leer...
Logica van talen die ik kén, snap ik.
Maar met bijvoorbeeld javascript ben ik net pas begonnen.
Btw. Tutorials over reactie bij aanraking toetsen zijn nog steeds welkom =)
Dus nu heb je al je functie om de verwerking te doen.
Enigste wat jij nog hoeft te doen is JS duidelijk maken dat deze functie uitgevoerd moet worden bij het indrukken van een toets.
Dit kan door een van de volgende manieren:
Code (php)
1
2
3
2
3
document.onkeyup = keyboard; // uitvoeren als de toets gelost wordt
document.onkeydown = keyboard; // wanneer de toets ingedrukt wordt
document.onkeypress = keyboard; // hiervan weet ik niet meer de correcte uitleg..
document.onkeydown = keyboard; // wanneer de toets ingedrukt wordt
document.onkeypress = keyboard; // hiervan weet ik niet meer de correcte uitleg..
Nu is het enkel nog aan jou om de gewenste methode toe te passen.
Ik heb ze allemaal nog een keer bekeken en ik ben eruit.
Nog even verder uitwerken maar:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
document.onkeypress = KeyCheckPress;
document.onkeyup = KeyCheckUp;
function KeyCheckUp(e)
{
document.Form1.KeyName.value = "";
}
function KeyCheckPress(e)
{
var KeyID = (window.event) ? event.keyCode : e.keyCode;
switch(KeyID)
{
case 16:
document.Form1.KeyName.value = "Shift";
break;
case 17:
document.Form1.KeyName.value = "Ctrl";
break;
case 18:
document.Form1.KeyName.value = "Alt";
break;
case 19:
document.Form1.KeyName.value = "Pause";
break;
case 37:
document.Form1.KeyName.value = "Arrow Left";
break;
case 38:
document.Form1.KeyName.value = "Arrow Up";
break;
case 39:
document.Form1.KeyName.value = "Arrow Right";
break;
case 40:
document.Form1.KeyName.value = "Arrow Down";
break;
}
}
</script>
</head>
<body>
<form name="Form1">
<input type="text" name="KeyName" value="" />
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
document.onkeypress = KeyCheckPress;
document.onkeyup = KeyCheckUp;
function KeyCheckUp(e)
{
document.Form1.KeyName.value = "";
}
function KeyCheckPress(e)
{
var KeyID = (window.event) ? event.keyCode : e.keyCode;
switch(KeyID)
{
case 16:
document.Form1.KeyName.value = "Shift";
break;
case 17:
document.Form1.KeyName.value = "Ctrl";
break;
case 18:
document.Form1.KeyName.value = "Alt";
break;
case 19:
document.Form1.KeyName.value = "Pause";
break;
case 37:
document.Form1.KeyName.value = "Arrow Left";
break;
case 38:
document.Form1.KeyName.value = "Arrow Up";
break;
case 39:
document.Form1.KeyName.value = "Arrow Right";
break;
case 40:
document.Form1.KeyName.value = "Arrow Down";
break;
}
}
</script>
</head>
<body>
<form name="Form1">
<input type="text" name="KeyName" value="" />
</form>
</body>
</html>
Edit: Hij moet nog wel een beetje aangepast worden..
Edit2: Het werkt niet met letters? a bijvoorbeeld doet ie niet.
Ik verander bij eentje de case 17 in case 65, maar dan gebeurt er niks.
Gewijzigd op 27/05/2010 21:28:17 door Victor Php
Bump