5568 sujets
Sémantique web et HTML
Salut
Je comprend pas bien l'intèrèt de faire cela...
Les usagers du web ont l'habitude de passer d'un élément a l'autre soit avec la souris soit en faisant tab....
Sinon j'imagine qu'il faut se tourner du coté du javascript ... cela risque d'etre assez fastidieux pour pas grand chose à mon avis... non ?
Je comprend pas bien l'intèrèt de faire cela...
Les usagers du web ont l'habitude de passer d'un élément a l'autre soit avec la souris soit en faisant tab....
Sinon j'imagine qu'il faut se tourner du coté du javascript ... cela risque d'etre assez fastidieux pour pas grand chose à mon avis... non ?
En fait, c'est parce que la navigation entre les zones se fait à l'aide d'une douchette pour code-barre, qui fonctionne a priori en ajoutant un RC après la saisie.
Ca fonctionne lorsque les utilisateurs scannent sous Excel, il faudrait que rien ne change lorsque je vais leur mettre ne place la page HTML.
Ca fonctionne lorsque les utilisateurs scannent sous Excel, il faudrait que rien ne change lorsque je vais leur mettre ne place la page HTML.
ahhhh ok.
j'avais justement par le passé fais un stage où je devais gèrer aussi une navigation à la douchette ... c'est un peu la galère sur une application web...
En fait le problème c'est que la validation de ton formulaire se fait avec entrée, donc je sais pas si c'est bien possible de cette façon.
Le truc serais alors de transformer l'"entrée" de la douchette en "tab"... je sais pas trop, c'est pas évident.
j'avais justement par le passé fais un stage où je devais gèrer aussi une navigation à la douchette ... c'est un peu la galère sur une application web...
En fait le problème c'est que la validation de ton formulaire se fait avec entrée, donc je sais pas si c'est bien possible de cette façon.
Le truc serais alors de transformer l'"entrée" de la douchette en "tab"... je sais pas trop, c'est pas évident.
Bonjour,
J'avais fait cela pour un projet web, une personne qui ne voulait pas changer ses habitudes , Donc oui il faut que tu te tournes vers le javascript, en annulant l'effet de la touche entrée qui permet de valider le formulaire et la remplacer par tabulation.
Si je retrouve le code je te le mettrai. Mais je l'avais trouver sur le net.
J'avais fait cela pour un projet web, une personne qui ne voulait pas changer ses habitudes , Donc oui il faut que tu te tournes vers le javascript, en annulant l'effet de la touche entrée qui permet de valider le formulaire et la remplacer par tabulation.
Si je retrouve le code je te le mettrai. Mais je l'avais trouver sur le net.
C'est pas très malin de modifier le fonctionnement des formulaires de cette façon, mais soit...
J'ai peut-être une idée pour simuler la tabulation en js, avec IE6 il y a une fonction fireEvent. Je n'ai pas encore compris comment on s'en sert mais ça doit être jouable.
sinon, faire la classique : préparer une propriété nextElement pour chaque élément de formulaire concerné... et pour faire encore mieux, y ajouter également prevElement pour pouvoir aussi faire maj+tab.
Problème, comment générer une liste de ce type automatiquement ? c'est là le problème.
Modifié par QuentinC (30 Jul 2007 - 17:31)
J'ai peut-être une idée pour simuler la tabulation en js, avec IE6 il y a une fonction fireEvent. Je n'ai pas encore compris comment on s'en sert mais ça doit être jouable.
sinon, faire la classique : préparer une propriété nextElement pour chaque élément de formulaire concerné... et pour faire encore mieux, y ajouter également prevElement pour pouvoir aussi faire maj+tab.
Problème, comment générer une liste de ce type automatiquement ? c'est là le problème.
Modifié par QuentinC (30 Jul 2007 - 17:31)
Voici une idée pour simuler la touche tab avec la touche enter. Une fois le dernier champ rempli, l'envoi est effectué normalement.
Attention : le code suivant a été écrit en direct dans la zone de texte de réponse. Par conséquent, celui-ci n'a pas été préalablement testé.
Attention : le code suivant a été écrit en direct dans la zone de texte de réponse. Par conséquent, celui-ci n'a pas été préalablement testé.
for (var k=0; k<document.forms.length; k++) {
for (var j=0; j < document.forms[k].elements.length; j++) {
var cur = document.forms[k].elements[j];
if (j<document.forms[k].elements.length -1) cur.next = document.forms[k].elements[j +1];
else cur.next = null;
cur.nextFocus = function () {
if (this.next && this.next.focus) {
this.next.focus();
return false;
}
else return true;
}
cur.onkeydown = function (evx) {
var e = null;
if (evx) e = evx;
else if (window.event) e = window.event;
else return true;
if (!e) return true;
var kc = 0;
if (e.keyCode) kc = e.keyCode;
else if (e.which) kc = e.which;
else return true;
if (!kc) return true;
if (kc==0x0A || kc==0x0D) { // touche enter ?
if (this.nextFocus) return this.nextFocus();
else return true;
}
else return true;
}
}}
Ca ne fonctionne pas chez moi, mais j'ai trouvé - je pense - beaucoup plus simple. Ca fonctionne avec IE mais pas avec FF :
Voilà, je pense que je vais en rester là...
Merci à tous pour votre aide
Modifié par orionis (31 Jul 2007 - 15:28)
<body onkeydown="if (event.keyCode==13) {event.keyCode=9; return event.keyCode}">
Voilà, je pense que je vais en rester là...
Merci à tous pour votre aide
Modifié par orionis (31 Jul 2007 - 15:28)