YES!!!
Cette fois c'est bon!
Un grand grand merci Fremy, tu m'enlèves une sacré épine du pied!!!
Je l'adapte maintenant à mon code et je reviens mettre résolu quand j'ai fini.
YES!!!
Cette fois c'est bon!
Un grand grand merci Fremy, tu m'enlèves une sacré épine du pied!!!
Je l'adapte maintenant à mon code et je reviens mettre résolu quand j'ai fini.
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
Ok, ça marche bien maintenant que je l'ai correctement adapté à mon code...![]()
Un dernier point: dans certaines pages, j'ai des formulaires et du coup quand je veux saisir les champs de mon formulaire, il se comporte comme s'il s'agissait d'un raccourci clavier et essaie de me rediriger sur une page (inexistante).
Je ne peux donc plus remplir mes formulaires...![]()
Aussi, comme j'ai un grand menu mes raccourcis clavier vont de 0 à 20, or, je n'ai pas le temps de taper le deuxième chiffre que le premier est déjà interprété et que je suis redirigée...
Comment résoudre ce problème?
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
1/ Demander que ALT soit enfoncée pour démerer la redirection...
Comme ca quand on taprera 1 dans une boite de texte, si ALT n'est pas enfoncée, il n'y aura pas de problème.
2/ Si tu as des menus de supérieure à 9, utilise les lettes
('a','b','c','d','e', ...) : ca augmentera ton maximum à 35 (36 + 9)
Je vais améliorer le code et je reposte quand j'ai fini....
Oui, ce serait parfait avec la touche ALT!
Et pour les lettres, en effet, ça me semble un bon compromis.
Merci Fremy![]()
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
Seul changement : Les racourci se font avec 2 caractères obligatoirement.
J'ai essayé avec ALT mais il y avait des incompatibiliés navigateurs et certaines combinaisons étaients réservées (Alt + a : menu afficher)
CCL : Si tu tapes 01 dans tes forms ca va déclancher le changement de page tout de même...
Mais je planche sur une solution...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <html> <body> <script> document.onkeypress_error=false document.onkeypress=function(e) { var Code=false if (e) { if (e.keyCode) { Code=e.keyCode } else if (e.which) { Code=e.which } } if (window.event && (!Code)) { if (window.event.keyCode) { Code=window.event.keyCode } else if (window.event.which) { Code=window.event.which } } if (Code) { window.KeyEvent(Code) // Lance la gestion de l'evenement } else { // Impossible de lire le caractère... if (!document.onkeypress_error) { alert("Votre navigateur n'est pas compatible."); document.onkeypress_error=true; } } return true; } window.KeyEvent_Str=".." window.KeyEvent=function(Code, Alt) { var Char = String.fromCharCode(Code) var OldChar = window.KeyEvent_Str.charAt(1) window.KeyEvent_Str = OldChar + Char if (Links[window.KeyEvent_Str]) { window.location.href=(Links[window.KeyEvent_Str]) } } var Links=new Array(); // Obligatoire !!! // Liste des raccourcis : A génerer par PHP Links['01']='http://www.google.fr' Links['02']='http://www.yahoo.fr' // [...] </script> </body> <html>
Solution trouvée : Si le onkeypress provient d'un input, sa gestion est annulée...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <html> <body> <input type='texte' /> <script> document.onkeypress_error=false document.onkeypress=function(e) { var Code=false var Src=new Object() if (e) { if (e.keyCode) { Code=e.keyCode Src=(e.srcElement) } else if (e.which) { Code=e.which Src=(e.target) } } if (window.event && (!Code)) { if (window.event.keyCode) { Code=window.event.keyCode Src=(window.event.srcElement) } else if (window.event.which) { Code=window.event.which Src=(window.event.target) } } if (Code) { window.KeyEvent(Code, Src) // Lance la gestion de l'evenement } else { // Impossible de lire le caractère... if (!document.onkeypress_error) { alert("Votre navigateur n'est pas totalement compatible avec ce site... Veuillez le mettre à jour."); document.onkeypress_error=true; return false; } } return true; } window.KeyEvent_Str=".." window.KeyEvent=function(Code, Src) { if (Src.tagName.toUpperCase()=="INPUT") { return false; } var Char = String.fromCharCode(Code) var OldChar = window.KeyEvent_Str.charAt(1) window.KeyEvent_Str = OldChar + Char if (Links[window.KeyEvent_Str]) { window.location.href=(Links[window.KeyEvent_Str]) } return true; } var Links=new Array(); // Obligatoire !!! // Liste des raccourcis : A génerer par PHP Links['01']='http://www.google.fr' Links['02']='http://www.yahoo.fr' // [...] // PS : // ........................... // <a href="http://Links['YA']='http://www.yahoo.fr'" target="_blank">Links['YA']='http://www.yahoo.fr'</a> // Cela aussi est valable. </script> </body> <html>
Super Fremy, ça fonctionne impeccablement bien!![]()
![]()
Pile poil ce qu'il me fallait, encore une fois un grand MERCI!
Et si tu as un jour besoin d'un coup de main en php, n'hésite pas!![]()
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
Me revoilà...![]()
Alors, maintenant j'aimerai si possible annuler la gestion du onkeypress uniquement pour les input de type texte...![]()
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 var TabInputs=documents.getElementsByTagName('input') var TabText= new Array() for (i=0;i<TabInputs.length;i++){ if (TabInputs[i].type.toUppercase()=='TEXT'){TabText.push(TabInputs[i])} } for (i=0;i<TabText.length;i++){TabText[i].onmouseover=function(){};}
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Lol, merci SpaceFrog, mais je lui ai déjà adapté ma fonction par MP
(J'en ai d'ailleurs profité pour ajouter la gestion des TextArea que j'avais ajouté pour moi mais que j'avais omis de lui communiquer)
Pour le code final :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <html> <body> <input type='texte' /> <textarea></textarea> <script> document.onkeypress_error=false document.onkeypress=function(e) { var Code=false var Src=new Object() if (e) { if (e.keyCode) { Code=e.keyCode Src=(e.srcElement) } else if (e.which) { Code=e.which Src=(e.target) } } if (window.event && (!Code)) { if (window.event.keyCode) { Code=window.event.keyCode Src=(window.event.srcElement) } else if (window.event.which) { Code=window.event.which Src=(window.event.target) } } if (Code) { window.KeyEvent(Code, Src) // Lance la gestion de l'evenement } else { // Impossible de lire le caractère... if (!document.onkeypress_error) { alert("Votre navigateur n'est pas totalement compatible avec ce site... Veuillez le mettre à jour."); document.onkeypress_error=true; return false; } } return true; } window.KeyEvent_Str=".." window.KeyEvent=function(Code, Src) { if (Src.tagName.toUpperCase()=="TEXTAREA" || ( Src.tagName.toUpperCase()=="INPUT" && ( Scr.getAttribute().toUpperCase() == null || Scr.getAttribute().toUpperCase() == "" || Scr.getAttribute().toUpperCase() == "TEXT" ) ) ) { return false; } var Char = String.fromCharCode(Code) var OldChar = window.KeyEvent_Str.charAt(1) window.KeyEvent_Str = OldChar + Char if (Links[window.KeyEvent_Str]) { window.location.href=(Links[window.KeyEvent_Str]) } return true; } var Links=new Array(); // Obligatoire !!! // Liste des raccourcis : A génerer par PHP Links['01']='http://www.google.fr' Links['02']='http://www.yahoo.fr' // [...] </script> </body> <html>
C'est parfait! Un grand merci!![]()
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1
Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
Partager