1 votes

Méthode standard de détection du départ de l'attention d'un élément

Comment puis-je, de manière standard, détecter lorsque le focus quitte un élément ou l'un de ses éléments fils.

ne suffit pas puisqu'il est déclenché lorsque le focus est placé dans un élément enfant.

IE fournit l'événement focusout incroyablement utile pour cela (c'est comme le flou, mais avec des bulles), mais comment puis-je le faire d'une manière standard, sauf en attachant un gestionnaire de flou à tous les éléments enfants ?

Edit : apparemment je n'ai pas été clair sur ce que je voulais dire.

J'ai une structure comme celle-ci :

<div id="parent">
    <input type="text" id="child1">
    <div id="child2" tabindex="0">yada</div>
</div>
<input type="text" id="outside"/>

Je veux attacher un gestionnaire d'événement à parent pour savoir quand le focus quitte un de ses éléments enfants (child1 et child2) pour aller vers un élément extérieur à parent, par exemple celui avec l'id "outside". Dans IE, je peux le faire en me liant à l'événement focusout, mais cet événement n'existe pas dans Firefox (ni dans le DOM du W3C).

2voto

anschauung Points 2689

Je vais aller de l'avant et suggérer le Javascript Événement OnBlur mais n'hésitez pas à préciser si ce n'est pas ce que vous recherchez. Selon le sens que vous donnez à l'expression "ou à l'un de ses éléments enfants", la réponse peut être différente.

1voto

erikkallen Points 16601

J'ai fini par créer le jQuery focus pour résoudre ce problème, au cas où quelqu'un rencontrerait le même problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X