[JS] Vérifier si controle a le focus

Fermé
Matt - 2 août 2006 à 09:10
 Eorana - 1 juil. 2010 à 13:18
Bonjour,

Comment peut-on savoir si un controle (un input texte dans mon cas) a le focus ?

Merci

3 réponses

Bonjour,


Il n'existe effectivement pas de propriété te permettant de savoir si un élément possède le focus.

Cependant tu peux facilement contourner la difficulté en faisant comme suit :

Tu créés une variable globale (issetfocus par exemple) qui est initialisée à 0.
Tu ajoutes les propriétés suivante à ton élément :
-> onFocus='issetfocus=1;'
-> onBlur='issetfocus=0;'

Pour savoir si ton élément a le focus, tu n'as plus qu'à tester avec un if(issetfocus).


En espérant avoir répondu correctement à ta question,
Eorana
4
choubaka Messages postés 39152 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 17 mars 2023 2 099
2 août 2006 à 09:29
Salut

il existe un évènement "onFocus" ..

Par exemple, un champ de saisie de login avec à l'origine "Votre login".
Si on cliquez sur le champ, "Votre login" disparaît.


<FORM name="formulaire">
   <INPUT type="texte" name="login" value='Votre login' onFocus="if (this.value=='Votre login') {this.value=''}">
</FORM>

0
Merci pour votre réponse mais mon problème ne se situe pas là.
Je vais essayer de mieux m'expliquer.

Lors de la sortie du pointeur de mon controle, je veux savoir si celui-ci à le focus.
J'ai essayer quelque chose du genre :

<INPUT type="texte" name="login" onmouseout="if (this.focus) {this.className="Texte"}">

Biensur, la propriété "this.focus" n'existe pas mais je cherche un équivalent ou du moins une méthode permettant d'obtenir le même résultat

Merci
0