2010-12-12 15 views

Répondre

0

Assez étonnamment, il n'y a aucun moyen simple de le faire. IE a un select événement qui est mis en œuvre sur tous les éléments, mais les autres navigateurs n'ont jamais étendu cela au-delà des entrées. Vous devrez gérer les événements keyup et mouseup pour l'ensemble du document et écrire du code pour comparer la sélection en cours avec la sélection précédente à partir de la dernière exécution du gestionnaire d'événements.

3

Vous pouvez joindre un écouteur d'événement mouseup et un écouteur keypress respectivement pour les sélections de la souris et du clavier, puis utilisez window.getSelection() pour dire si le texte est sélectionné.

+0

IE n'a pas 'window.getSelection()', et des sélections peuvent également être faites en utilisant le clavier. –

+0

@Tim Down: tqwer demandait spécifiquement Firefox ... car les sélections au clavier pouvaient ajouter un écouteur 'keypress', ou simplement attacher un timeout pour vérifier périodiquement. Actuellement, il n'y a pas d'écouteurs spécifiquement pour les sélections de texte ou les changements de presse-papiers. –

+0

L'utilisateur mentionne également "IE8 +". Et oui, je suis conscient qu'il n'y a aucun événement qui fait cela, comme je l'ai mentionné dans ma réponse. –