Javascript
Zoals ik een lange tijd terug al een gepost had ben ik er nu weer op terug gekomen. Maar kom nog niet zo gek veel verder.
Ik heb al een ander javascriptje in elkaar kunnen maken mbv google.
Alleen lukt het mij 1 ding niet te kunnen maken.
Het disable'en van een javascript als bij bijvoorbeeld een input of textarea.
Hier het script.
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
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
<?php
<script language="JavaScript1.2">
/*
Geen hoofdletter gebruiken bij deze letters.
Zie ook http://www.w3.org/2002/09/tests/keys.html
*/
var hotkey=104 /* h */
var destination="index.php"
var hotkey=105 /* I */
var destination="index.php?p=COMM.inbox"
var hotkey=116 /* T */
var destination="index.php?p=TRAVEL.travel"
if (document.layers)
document.captureEvents(Event.KEYPRESS)
function backhome(e){
if (document.layers){
if (e.which==hotkey)
window.location=destination
}
else if (document.all){
if (event.keyCode==hotkey)
window.location=destination
}
}
document.onkeypress=backhome
</script>
?>
<script language="JavaScript1.2">
/*
Geen hoofdletter gebruiken bij deze letters.
Zie ook http://www.w3.org/2002/09/tests/keys.html
*/
var hotkey=104 /* h */
var destination="index.php"
var hotkey=105 /* I */
var destination="index.php?p=COMM.inbox"
var hotkey=116 /* T */
var destination="index.php?p=TRAVEL.travel"
if (document.layers)
document.captureEvents(Event.KEYPRESS)
function backhome(e){
if (document.layers){
if (e.which==hotkey)
window.location=destination
}
else if (document.all){
if (event.keyCode==hotkey)
window.location=destination
}
}
document.onkeypress=backhome
</script>
?>
Het doel van dit script is dus als ik op een letter druk moet hij naar een bepaalde pagina gaan. Als voorbeeld, ik druk op de letter T dan moet ik naar de volgende pagina gaan index.php?p=TRAVEL.travel
Maar het ''lullige '' is het hem nu als je in een textarea of een <input moet typen , als je dan bijvoorbeeld op een letter druk zal hij naar een andere pagina gaan.
Dus ik vroeg mij af of daar niet iets voor te maken is.
Bijvoorbeeld <input type='text' name='naam' id='no'>
Als id dus no is ( id='no' ) dan mag hij dit script dus niet uitvoeren.
Met vriendelijke groet
Rick Feenstra
Gewijzigd op 01/01/1970 01:00:00 door Rick
Ik zou zo de navigatie niet doen. Lijkt me veel te onrustig voor de user. Laat ze gewoon doen wat ze gewend zijn; op hyperlinks klikken.
Het is namelijk ook voor een text based game.
Of zal je misschien een soort van voorbeeldje kunnen typen :$ ?
Snap niet precies hoe je het bedoelt namelijk.
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
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
<?php
ini_set ('display_errors', 1);
error_reporting (E_ALL);
require 'stats.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Jan Koehoorn | template</title>
<link rel="stylesheet" type="text/css" media="screen" href="reset.css" />
<link rel="stylesheet" type="text/css" media="screen" href="oop.css" />
<style type="text/css">
</style>
<script type="text/javascript" src="mootools/mootools.js"></script>
<script type="text/javascript">
var keyboard_nav = true;
window.addEvent ('domready', function () {
$$('input').addEvent ('focus', function () {
keyboard_nav = false;
});
$$('input').addEvent ('blur', function () {
keyboard_nav = true;
});
});
</script>
</head>
<body>
<div id="container">
<h1>template</h1>
<form method="post" action="#">
<p>
<label for="tekst1">tekst</label>
<input id="tekst1" name="tekst1" />
</p>
<p>
<label for="tekst2">tekst</label>
<input id="tekst2" name="tekst2" />
</p>
<p>
<label for="tekst3">tekst</label>
<textarea id="tekst3" name="tekst3"></textarea>
</p>
</form>
</div>
</body>
</html>
ini_set ('display_errors', 1);
error_reporting (E_ALL);
require 'stats.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Jan Koehoorn | template</title>
<link rel="stylesheet" type="text/css" media="screen" href="reset.css" />
<link rel="stylesheet" type="text/css" media="screen" href="oop.css" />
<style type="text/css">
</style>
<script type="text/javascript" src="mootools/mootools.js"></script>
<script type="text/javascript">
var keyboard_nav = true;
window.addEvent ('domready', function () {
$$('input').addEvent ('focus', function () {
keyboard_nav = false;
});
$$('input').addEvent ('blur', function () {
keyboard_nav = true;
});
});
</script>
</head>
<body>
<div id="container">
<h1>template</h1>
<form method="post" action="#">
<p>
<label for="tekst1">tekst</label>
<input id="tekst1" name="tekst1" />
</p>
<p>
<label for="tekst2">tekst</label>
<input id="tekst2" name="tekst2" />
</p>
<p>
<label for="tekst3">tekst</label>
<textarea id="tekst3" name="tekst3"></textarea>
</p>
</form>
</div>
</body>
</html>
Nu staat de variabele keyboard_nav op false als de cursor in een textveld of textarea staat.
Als die het doet zal ik het wel even posten ;)